部署
This commit is contained in:
parent
afabe1816b
commit
844533c5db
@ -57,6 +57,7 @@ type ProductListItem struct {
|
|||||||
QuoteFactoryName string `json:"quoteFactoryName"`
|
QuoteFactoryName string `json:"quoteFactoryName"`
|
||||||
QuoteStartNum int64 `json:"quoteStartNum"`
|
QuoteStartNum int64 `json:"quoteStartNum"`
|
||||||
QuoteMeasureUnit string `json:"quoteMeasureUnit"`
|
QuoteMeasureUnit string `json:"quoteMeasureUnit"`
|
||||||
|
OuterNum *int64 `json:"outerNum"`
|
||||||
Currency string `json:"currency"`
|
Currency string `json:"currency"`
|
||||||
CurrencyName string `json:"currencyName"`
|
CurrencyName string `json:"currencyName"`
|
||||||
CurrencySymbol string `json:"currencySymbol"`
|
CurrencySymbol string `json:"currencySymbol"`
|
||||||
@ -112,6 +113,7 @@ type ProductItem struct {
|
|||||||
QuoteFactoryName string `json:"quoteFactoryName"`
|
QuoteFactoryName string `json:"quoteFactoryName"`
|
||||||
QuoteStartNum int64 `json:"quoteStartNum"`
|
QuoteStartNum int64 `json:"quoteStartNum"`
|
||||||
QuoteMeasureUnit string `json:"quoteMeasureUnit"`
|
QuoteMeasureUnit string `json:"quoteMeasureUnit"`
|
||||||
|
OuterNum *int64 `json:"outerNum"`
|
||||||
Currency string `json:"currency"`
|
Currency string `json:"currency"`
|
||||||
CurrencyName string `json:"currencyName"`
|
CurrencyName string `json:"currencyName"`
|
||||||
CurrencySymbol string `json:"currencySymbol"`
|
CurrencySymbol string `json:"currencySymbol"`
|
||||||
|
@ -17,9 +17,13 @@ type ArgsShipmentList struct {
|
|||||||
Search ShipmentSearch
|
Search ShipmentSearch
|
||||||
}
|
}
|
||||||
type ShipmentSearch struct {
|
type ShipmentSearch struct {
|
||||||
InvoiceSerial string // 出运发票号
|
InvoiceSerial string // 出运发票号
|
||||||
CustomIds []int64 // 客户筛选
|
CustomIds []int64 // 客户筛选
|
||||||
StaffIds []int64 // 业务员筛选
|
StaffIds []int64 // 业务员筛选
|
||||||
|
WorkflowStatus []int64 // 审核状态
|
||||||
|
IsSerial int64 // 是否商检
|
||||||
|
IsCustoms int64 // 是否报关
|
||||||
|
IsExchangeSettlement int64 // 是否结汇
|
||||||
}
|
}
|
||||||
type ReplyShipmentList struct {
|
type ReplyShipmentList struct {
|
||||||
List []ShipmentItem `json:"list"`
|
List []ShipmentItem `json:"list"`
|
||||||
@ -36,6 +40,7 @@ type ShipmentItem struct {
|
|||||||
EstSailingDate *time.Time `json:"estSailingDate"`
|
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||||
ShipPort string `json:"shipPort"`
|
ShipPort string `json:"shipPort"`
|
||||||
DischargePort string `json:"dischargePort"`
|
DischargePort string `json:"dischargePort"`
|
||||||
|
WorkflowStatus int64 `json:"workflowStatus"`
|
||||||
CreatedStaffId int64 `json:"createdStaffId"`
|
CreatedStaffId int64 `json:"createdStaffId"`
|
||||||
CreatedAt *time.Time `json:"createdAt"`
|
CreatedAt *time.Time `json:"createdAt"`
|
||||||
UpdatedAt *time.Time `json:"updatedAt"`
|
UpdatedAt *time.Time `json:"updatedAt"`
|
||||||
@ -56,7 +61,8 @@ type ArgsShipmentAdd struct {
|
|||||||
ShipmentAdd ShipmentAdd
|
ShipmentAdd ShipmentAdd
|
||||||
}
|
}
|
||||||
type ShipmentAdd struct {
|
type ShipmentAdd struct {
|
||||||
CustomID int64 // 客户id
|
CustomId int64 // 客户id
|
||||||
|
VouchingClerkId int64 // 单证id
|
||||||
EstSailingDate *time.Time // 预计船期
|
EstSailingDate *time.Time // 预计船期
|
||||||
InvoiceSerial string // 发票号
|
InvoiceSerial string // 发票号
|
||||||
InvoiceDate time.Time // 发票日期
|
InvoiceDate time.Time // 发票日期
|
||||||
@ -124,74 +130,8 @@ func (s *shipment) Add(ctx context.Context, args ArgsShipmentAdd) (shipmentId in
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
type ReplyShipmentInfo struct {
|
|
||||||
Id int64 `json:"id"`
|
|
||||||
CustomName string `json:"customName"`
|
|
||||||
CustomShortName string `json:"customShortName"`
|
|
||||||
EstSailingDate *time.Time `json:"estSailingDate"`
|
|
||||||
InvoiceSerial string `json:"invoiceSerial"`
|
|
||||||
InvoiceDate time.Time `json:"invoiceDate"`
|
|
||||||
ContractDate *time.Time `json:"contractDate"`
|
|
||||||
TradeType string `json:"tradeType"`
|
|
||||||
OurCompany string `json:"ourCompany"`
|
|
||||||
PaymentType string `json:"paymentType"`
|
|
||||||
PaymentDepositRate *decimal.Decimal `json:"paymentDepositRate"`
|
|
||||||
PaymentDepositAmount *decimal.Decimal `json:"paymentDepositAmount"`
|
|
||||||
PaymentCycle *int64 `json:"paymentCycle"`
|
|
||||||
PaymentTerms string `json:"paymentTerms"`
|
|
||||||
CommissionRate *decimal.Decimal `json:"commissionRate"`
|
|
||||||
TradeCountry string `json:"tradeCountry"`
|
|
||||||
RecBank string `json:"recBank"`
|
|
||||||
RecBankEng string `json:"recBankEng"`
|
|
||||||
RecBankName string `json:"recBankName"`
|
|
||||||
RecBankNameEng string `json:"recBankNameEng"`
|
|
||||||
RecBankCardNo string `json:"recBankCardNo"`
|
|
||||||
RecBankCardName string `json:"recBankCardName"`
|
|
||||||
Shipper string `json:"shipper"`
|
|
||||||
Consignee string `json:"consignee"`
|
|
||||||
Notifier string `json:"notifier"`
|
|
||||||
DueRecDate *time.Time `json:"dueRecDate"`
|
|
||||||
ShipMode string `json:"shipMode"`
|
|
||||||
ContainerType string `json:"containerType"`
|
|
||||||
ReadyDate *time.Time `json:"readyDate"`
|
|
||||||
ShipPort string `json:"shipPort"`
|
|
||||||
DischargePort string `json:"dischargePort"`
|
|
||||||
DischargePortEng string `json:"dischargePortEng"`
|
|
||||||
DeliveryCountry string `json:"deliveryCountry"`
|
|
||||||
DeliveryCountryEng string `json:"deliveryCountryEng"`
|
|
||||||
Destination string `json:"destination"`
|
|
||||||
FactoryHaulAdress string `json:"factoryHaulAdress"`
|
|
||||||
LogisticsCompanyId int64 `json:"logisticsCompanyId"`
|
|
||||||
LogisticsCompany string `json:"logisticsCompany"`
|
|
||||||
LogisticsCompanyContactName string `json:"logisticsCompanyContactName"`
|
|
||||||
LogisticsCompanyContactPhone string `json:"logisticsCompanyContactPhone"`
|
|
||||||
LogisticsCompanyContactTel string `json:"logisticsCompanyContactTel"`
|
|
||||||
LogisticsCompanyContactEmail string `json:"logisticsCompanyContactEmail"`
|
|
||||||
SeparableFlag int64 `json:"separableFlag"`
|
|
||||||
CopyCount *int64 `json:"copyCount"`
|
|
||||||
InsuranceRatio *int64 `json:"insuranceRatio"`
|
|
||||||
CreditSerial string `json:"creditSerial"`
|
|
||||||
CreditDate *time.Time `json:"creditDate"`
|
|
||||||
InlandShipWay string `json:"inlandShipWay"`
|
|
||||||
PackagingType string `json:"packagingType"`
|
|
||||||
ShipmentNo string `json:"shipmentNo"`
|
|
||||||
CnoSno string `json:"cnoSno"`
|
|
||||||
Declare1 string `json:"declare1"`
|
|
||||||
Declare2 string `json:"declare2"`
|
|
||||||
Info string `json:"info"`
|
|
||||||
RegulatoryMethods string `json:"regulatoryMethods"`
|
|
||||||
TaxExemptionNature string `json:"taxExemptionNature"`
|
|
||||||
MarkText string `json:"markText"`
|
|
||||||
MarkImg string `json:"markImg"`
|
|
||||||
WorkflowId int64 `json:"workflowId"`
|
|
||||||
WorkflowStatus int64 `json:"workflowStatus"`
|
|
||||||
WorkflowReason string `json:"workflowReason"`
|
|
||||||
CreatedStaffId int64 `json:"createdStaffId"`
|
|
||||||
CreatedAt *time.Time `json:"createdAt"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// Info @TITLE 详情
|
// Info @TITLE 详情
|
||||||
func (s *shipment) Info(ctx context.Context, shipmentId int64) (reply ReplyShipmentInfo, err error) {
|
func (s *shipment) Info(ctx context.Context, shipmentId int64) (reply shipment2.ReplyShipmentInfo, err error) {
|
||||||
xClient, err := client.GetClient(s)
|
xClient, err := client.GetClient(s)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
@ -259,6 +199,7 @@ type ArgsShipmentData struct {
|
|||||||
TaxExemptionNature string // 征免性质
|
TaxExemptionNature string // 征免性质
|
||||||
MarkText string // 唛头文字
|
MarkText string // 唛头文字
|
||||||
MarkImg string // 唛头图片
|
MarkImg string // 唛头图片
|
||||||
|
VouchingClerkId int64 // 单证id
|
||||||
}
|
}
|
||||||
|
|
||||||
// Edit @TITLE 编辑
|
// Edit @TITLE 编辑
|
||||||
|
77
erp/shipment/bean.go
Normal file
77
erp/shipment/bean.go
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
package shipment
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/shopspring/decimal"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
type ReplyShipmentInfo struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
VouchingClerkId int64 `json:"vouchingClerkId"`
|
||||||
|
CustomName string `json:"customName"`
|
||||||
|
CustomShortName string `json:"customShortName"`
|
||||||
|
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||||
|
InvoiceSerial string `json:"invoiceSerial"`
|
||||||
|
InvoiceDate time.Time `json:"invoiceDate"`
|
||||||
|
ContractDate *time.Time `json:"contractDate"`
|
||||||
|
TradeType string `json:"tradeType"`
|
||||||
|
OurCompany string `json:"ourCompany"`
|
||||||
|
PaymentType string `json:"paymentType"`
|
||||||
|
PaymentDepositRate *decimal.Decimal `json:"paymentDepositRate"`
|
||||||
|
PaymentDepositAmount *decimal.Decimal `json:"paymentDepositAmount"`
|
||||||
|
PaymentCycle *int64 `json:"paymentCycle"`
|
||||||
|
PaymentTerms string `json:"paymentTerms"`
|
||||||
|
CommissionRate *decimal.Decimal `json:"commissionRate"`
|
||||||
|
TradeCountry string `json:"tradeCountry"`
|
||||||
|
RecBank string `json:"recBank"`
|
||||||
|
RecBankEng string `json:"recBankEng"`
|
||||||
|
RecBankName string `json:"recBankName"`
|
||||||
|
RecBankNameEng string `json:"recBankNameEng"`
|
||||||
|
RecBankCardNo string `json:"recBankCardNo"`
|
||||||
|
RecBankCardName string `json:"recBankCardName"`
|
||||||
|
Shipper string `json:"shipper"`
|
||||||
|
Consignee string `json:"consignee"`
|
||||||
|
Notifier string `json:"notifier"`
|
||||||
|
DueRecDate *time.Time `json:"dueRecDate"`
|
||||||
|
ShipMode string `json:"shipMode"`
|
||||||
|
ContainerType string `json:"containerType"`
|
||||||
|
ReadyDate *time.Time `json:"readyDate"`
|
||||||
|
ShipPort string `json:"shipPort"`
|
||||||
|
DischargePort string `json:"dischargePort"`
|
||||||
|
DischargePortEng string `json:"dischargePortEng"`
|
||||||
|
DeliveryCountry string `json:"deliveryCountry"`
|
||||||
|
DeliveryCountryEng string `json:"deliveryCountryEng"`
|
||||||
|
Destination string `json:"destination"`
|
||||||
|
FactoryHaulAdress string `json:"factoryHaulAdress"`
|
||||||
|
LogisticsCompanyId int64 `json:"logisticsCompanyId"`
|
||||||
|
LogisticsCompany string `json:"logisticsCompany"`
|
||||||
|
LogisticsCompanyContactName string `json:"logisticsCompanyContactName"`
|
||||||
|
LogisticsCompanyContactPhone string `json:"logisticsCompanyContactPhone"`
|
||||||
|
LogisticsCompanyContactTel string `json:"logisticsCompanyContactTel"`
|
||||||
|
LogisticsCompanyContactEmail string `json:"logisticsCompanyContactEmail"`
|
||||||
|
SeparableFlag int64 `json:"separableFlag"`
|
||||||
|
CopyCount *int64 `json:"copyCount"`
|
||||||
|
InsuranceRatio *int64 `json:"insuranceRatio"`
|
||||||
|
CreditSerial string `json:"creditSerial"`
|
||||||
|
CreditDate *time.Time `json:"creditDate"`
|
||||||
|
InlandShipWay string `json:"inlandShipWay"`
|
||||||
|
PackagingType string `json:"packagingType"`
|
||||||
|
ShipmentNo string `json:"shipmentNo"`
|
||||||
|
CnoSno string `json:"cnoSno"`
|
||||||
|
Declare1 string `json:"declare1"`
|
||||||
|
Declare2 string `json:"declare2"`
|
||||||
|
Info string `json:"info"`
|
||||||
|
RegulatoryMethods string `json:"regulatoryMethods"`
|
||||||
|
TaxExemptionNature string `json:"taxExemptionNature"`
|
||||||
|
MarkText string `json:"markText"`
|
||||||
|
MarkImg string `json:"markImg"`
|
||||||
|
WorkflowId int64 `json:"workflowId"`
|
||||||
|
WorkflowStatus int64 `json:"workflowStatus"`
|
||||||
|
WorkflowReason string `json:"workflowReason"`
|
||||||
|
CreatedStaffId int64 `json:"createdStaffId"`
|
||||||
|
CreatedAt *time.Time `json:"createdAt"`
|
||||||
|
SaleCurrency string `json:"saleCurrency"`
|
||||||
|
SaleCurrencyName string `json:"saleCurrencyName"`
|
||||||
|
SaleCurrencySymbol string `json:"saleCurrencySymbol"`
|
||||||
|
SaleCurrencyRate decimal.Decimal `json:"saleCurrencyRate"`
|
||||||
|
}
|
111
erp/shipment/customs.go
Normal file
111
erp/shipment/customs.go
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
package shipment
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"git.kumo.work/shama/service/client"
|
||||||
|
"git.kumo.work/shama/service/lib/bean"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
type customs struct {
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsCustomsList struct {
|
||||||
|
Page bean.Page
|
||||||
|
Search CustomsSearch
|
||||||
|
}
|
||||||
|
type CustomsSearch struct {
|
||||||
|
CustomsNo string // 报关单号
|
||||||
|
InvoiceSerial string // 出运发票号
|
||||||
|
CustomIds []int64 // 客户筛选
|
||||||
|
StaffIds []int64 // 业务员筛选
|
||||||
|
IsCancel int64 // 是否有效
|
||||||
|
}
|
||||||
|
type ReplyCustomsList struct {
|
||||||
|
List []CustomsItem `json:"list"`
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type CustomsItem struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
ShipmentId int64 `json:"shipmentId"`
|
||||||
|
InvoiceSerial string `json:"invoiceSerial"`
|
||||||
|
CustomsNo string `json:"customsNo"`
|
||||||
|
ContractDate *time.Time `json:"contractDate"`
|
||||||
|
InvoiceDate time.Time `json:"invoiceDate"`
|
||||||
|
CustomName string `json:"customName"`
|
||||||
|
CustomShortName string `json:"customShortName"`
|
||||||
|
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||||
|
ShipPort string `json:"shipPort"`
|
||||||
|
DischargePort string `json:"dischargePort"`
|
||||||
|
IsCancel int64 `json:"isCancel"`
|
||||||
|
CreatedStaffId int64 `json:"createdStaffId"`
|
||||||
|
CreatedAt *time.Time `json:"createdAt"`
|
||||||
|
UpdatedAt *time.Time `json:"updatedAt"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// List @TITLE 列表
|
||||||
|
func (c *customs) List(ctx context.Context, args ArgsCustomsList) (reply ReplyCustomsList, err error) {
|
||||||
|
xClient, err := client.GetClient(c)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "List", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ReplyCustomsInfo struct {
|
||||||
|
ReplyShipmentInfo
|
||||||
|
CustomsNo string `json:"customsNo"`
|
||||||
|
ShipmentId int64 `json:"shipmentId"`
|
||||||
|
IsCancel int64 `json:"isCancel"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// Info @TITLE 详情
|
||||||
|
func (c *customs) Info(ctx context.Context, customsId int64) (reply ReplyCustomsInfo, err error) {
|
||||||
|
xClient, err := client.GetClient(c)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "Info", customsId, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Products @TITLE 获取产品
|
||||||
|
func (c *customs) Products(ctx context.Context, customsId int64) (reply []SaleProductItem, err error) {
|
||||||
|
xClient, err := client.GetClient(c)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "Products", customsId, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsCustomsGen struct {
|
||||||
|
ShipmentId int64 // 订舱id
|
||||||
|
CustomsNo string // 报关单号
|
||||||
|
ShipmentSaleProductIds []int64 // 订舱产品id
|
||||||
|
StaffId int64 // 操作员工
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gen @TITLE 生成
|
||||||
|
func (c *customs) Gen(ctx context.Context, args ArgsCustomsGen) (err error) {
|
||||||
|
xClient, err := client.GetClient(c)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Gen", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cancel @TITLE 作废
|
||||||
|
func (c *customs) Cancel(ctx context.Context, customsId int64) (err error) {
|
||||||
|
xClient, err := client.GetClient(c)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Cancel", customsId, &reply)
|
||||||
|
return
|
||||||
|
}
|
160
erp/shipment/exchangeSettlement.go
Normal file
160
erp/shipment/exchangeSettlement.go
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
package shipment
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"git.kumo.work/shama/service/client"
|
||||||
|
"git.kumo.work/shama/service/lib/bean"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
type exchangeSettlement struct {
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsExchangeSettlementList struct {
|
||||||
|
Page bean.Page
|
||||||
|
Search ExchangeSettlementSearch
|
||||||
|
}
|
||||||
|
type ExchangeSettlementSearch struct {
|
||||||
|
ExchangeSettlementNo string // 结汇单号
|
||||||
|
InvoiceSerial string // 出运发票号
|
||||||
|
CustomIds []int64 // 客户筛选
|
||||||
|
StaffIds []int64 // 业务员筛选
|
||||||
|
IsCancel int64 // 是否有效
|
||||||
|
}
|
||||||
|
type ReplyExchangeSettlementList struct {
|
||||||
|
List []ExchangeSettlementItem `json:"list"`
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ExchangeSettlementItem struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
InvoiceSerial string `json:"invoiceSerial"`
|
||||||
|
ExchangeSettlementNo string `json:"exchangeSettlementNo"`
|
||||||
|
ContractDate *time.Time `json:"contractDate"`
|
||||||
|
InvoiceDate time.Time `json:"invoiceDate"`
|
||||||
|
CustomName string `json:"customName"`
|
||||||
|
CustomShortName string `json:"customShortName"`
|
||||||
|
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||||
|
ShipPort string `json:"shipPort"`
|
||||||
|
DischargePort string `json:"dischargePort"`
|
||||||
|
IsCancel int64 `json:"isCancel"`
|
||||||
|
CreatedStaffId int64 `json:"createdStaffId"`
|
||||||
|
CreatedAt *time.Time `json:"createdAt"`
|
||||||
|
UpdatedAt *time.Time `json:"updatedAt"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// List @TITLE 列表
|
||||||
|
func (e *exchangeSettlement) List(ctx context.Context, args ArgsExchangeSettlementList) (reply ReplyExchangeSettlementList, err error) {
|
||||||
|
xClient, err := client.GetClient(e)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "List", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ReplyExchangeSettlementInfo struct {
|
||||||
|
ReplyShipmentInfo
|
||||||
|
ExchangeSettlementNo string `json:"exchangeSettlementNo"`
|
||||||
|
ShipmentId int64 `json:"shipmentId"`
|
||||||
|
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||||
|
InvoiceDate time.Time `json:"invoiceDate"`
|
||||||
|
ReadyDate *time.Time `json:"readyDate"`
|
||||||
|
ShipPort string `json:"shipPort"`
|
||||||
|
DischargePort string `json:"dischargePort"`
|
||||||
|
DischargePortEng string `json:"dischargePortEng"`
|
||||||
|
Destination string `json:"destination"`
|
||||||
|
CreditSerial string `json:"creditSerial"`
|
||||||
|
RecBank string `json:"recBank"`
|
||||||
|
RecBankEng string `json:"recBankEng"`
|
||||||
|
RecBankName string `json:"recBankName"`
|
||||||
|
RecBankNameEng string `json:"recBankNameEng"`
|
||||||
|
RecBankCardNo string `json:"recBankCardNo"`
|
||||||
|
RecBankCardName string `json:"recBankCardName"`
|
||||||
|
ShipmentNo string `json:"shipmentNo"`
|
||||||
|
CnoSno string `json:"cnoSno"`
|
||||||
|
Declare1 string `json:"declare1"`
|
||||||
|
Declare2 string `json:"declare2"`
|
||||||
|
Info string `json:"info"`
|
||||||
|
CustomsInvoiceDate *time.Time `json:"customsInvoiceDate"`
|
||||||
|
VesselNameVoyage string `json:"vesselNameVoyage"`
|
||||||
|
IsCancel int64 `json:"isCancel"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// Info @TITLE 详情
|
||||||
|
func (e *exchangeSettlement) Info(ctx context.Context, exchangeSettlementId int64) (reply ReplyExchangeSettlementInfo, err error) {
|
||||||
|
xClient, err := client.GetClient(e)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "Info", exchangeSettlementId, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsExchangeSettlementGen struct {
|
||||||
|
ShipmentId int64 // 订舱id
|
||||||
|
ExchangeSettlementNo string // 结汇单号
|
||||||
|
StaffId int64 // 操作员工
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gen @TITLE 生成
|
||||||
|
func (e *exchangeSettlement) Gen(ctx context.Context, args ArgsExchangeSettlementGen) (err error) {
|
||||||
|
xClient, err := client.GetClient(e)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Gen", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cancel @TITLE 作废
|
||||||
|
func (e *exchangeSettlement) Cancel(ctx context.Context, exchangeSettlementId int64) (err error) {
|
||||||
|
xClient, err := client.GetClient(e)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Cancel", exchangeSettlementId, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsExchangeSettlementEdit struct {
|
||||||
|
ExchangeSettlementId int64 // 结汇单id
|
||||||
|
ArgsExchangeSettlementData
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsExchangeSettlementData struct {
|
||||||
|
EstSailingDate *time.Time // 预计发运日期
|
||||||
|
InvoiceDate *time.Time // 发票日期
|
||||||
|
ReadyDate *time.Time // 预计发运日期
|
||||||
|
ShipPort string // 港口
|
||||||
|
DischargePort string // 卸货港口
|
||||||
|
DischargePortEng string // 卸货港口英文
|
||||||
|
Destination string // 目的地
|
||||||
|
CreditSerial string // 信用证号
|
||||||
|
RecBank string // 收款银行
|
||||||
|
RecBankEng string // 收款银行英文
|
||||||
|
RecBankName string // 收款银行名称
|
||||||
|
RecBankNameEng string // 收款银行名称英文
|
||||||
|
RecBankCardNo string // 收款银行卡号
|
||||||
|
RecBankCardName string // 收款银行卡名
|
||||||
|
ShipmentNo string // shipmentNO
|
||||||
|
CnoSno string // CONTAINER NO./SEAL NO.
|
||||||
|
Declare1 string // 声明1
|
||||||
|
Declare2 string // 声明2
|
||||||
|
Info string // 备注
|
||||||
|
CustomsInvoiceDate *time.Time // 清关发票日期
|
||||||
|
VesselNameVoyage string // 船名航次
|
||||||
|
}
|
||||||
|
|
||||||
|
// Edit @TITLE 编辑
|
||||||
|
func (e *exchangeSettlement) Edit(ctx context.Context, args ArgsExchangeSettlementEdit) (err error) {
|
||||||
|
xClient, err := client.GetClient(e)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Edit", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
@ -68,9 +68,10 @@ type SaleProductItem struct {
|
|||||||
UpdatedAt *time.Time `json:"updatedAt"`
|
UpdatedAt *time.Time `json:"updatedAt"`
|
||||||
}
|
}
|
||||||
type ArgsSaleProductSearch struct {
|
type ArgsSaleProductSearch struct {
|
||||||
ShipmentId int64 // 出舱单
|
ShipmentId int64 // 出舱单
|
||||||
SaleIds []int64 // 销售合同
|
SaleIds []int64 // 销售合同
|
||||||
PiSerial string // pi号
|
PiSerial string // pi号
|
||||||
|
ShipmentSaleProductIds []int64 // 出舱单商品id
|
||||||
}
|
}
|
||||||
|
|
||||||
// All @TITLE 获取商品
|
// All @TITLE 获取商品
|
||||||
|
111
erp/shipment/serial.go
Normal file
111
erp/shipment/serial.go
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
package shipment
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"git.kumo.work/shama/service/client"
|
||||||
|
"git.kumo.work/shama/service/lib/bean"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
type serial struct {
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsSerialList struct {
|
||||||
|
Page bean.Page
|
||||||
|
Search SerialSearch
|
||||||
|
}
|
||||||
|
type SerialSearch struct {
|
||||||
|
SerialNo string // 商检单号
|
||||||
|
InvoiceSerial string // 出运发票号
|
||||||
|
CustomIds []int64 // 客户筛选
|
||||||
|
StaffIds []int64 // 业务员筛选
|
||||||
|
IsCancel int64 // 是否有效
|
||||||
|
}
|
||||||
|
type ReplySerialList struct {
|
||||||
|
List []SerialItem `json:"list"`
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type SerialItem struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
ShipmentId int64 `json:"shipmentId"`
|
||||||
|
InvoiceSerial string `json:"invoiceSerial"`
|
||||||
|
SerialNo string `json:"serialNo"`
|
||||||
|
ContractDate *time.Time `json:"contractDate"`
|
||||||
|
InvoiceDate time.Time `json:"invoiceDate"`
|
||||||
|
CustomName string `json:"customName"`
|
||||||
|
CustomShortName string `json:"customShortName"`
|
||||||
|
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||||
|
ShipPort string `json:"shipPort"`
|
||||||
|
DischargePort string `json:"dischargePort"`
|
||||||
|
IsCancel int64 `json:"isCancel"`
|
||||||
|
CreatedStaffId int64 `json:"createdStaffId"`
|
||||||
|
CreatedAt *time.Time `json:"createdAt"`
|
||||||
|
UpdatedAt *time.Time `json:"updatedAt"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// List @TITLE 列表
|
||||||
|
func (s *serial) List(ctx context.Context, args ArgsSerialList) (reply ReplySerialList, err error) {
|
||||||
|
xClient, err := client.GetClient(s)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "List", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ReplySerialInfo struct {
|
||||||
|
ReplyShipmentInfo
|
||||||
|
SerialNo string `json:"serialNo"`
|
||||||
|
ShipmentId int64 `json:"shipmentId"`
|
||||||
|
IsCancel int64 `json:"isCancel"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// Info @TITLE 详情
|
||||||
|
func (s *serial) Info(ctx context.Context, serialId int64) (reply ReplySerialInfo, err error) {
|
||||||
|
xClient, err := client.GetClient(s)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "Info", serialId, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Products @TITLE 获取产品
|
||||||
|
func (s *serial) Products(ctx context.Context, serialId int64) (reply []SaleProductItem, err error) {
|
||||||
|
xClient, err := client.GetClient(s)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "Products", serialId, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
type ArgsSerialGen struct {
|
||||||
|
ShipmentId int64 // 订舱id
|
||||||
|
SerialNo string // 商检单号
|
||||||
|
ShipmentSaleProductIds []int64 // 订舱产品id
|
||||||
|
StaffId int64 // 操作员工
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gen @TITLE 生成
|
||||||
|
func (s *serial) Gen(ctx context.Context, args ArgsSerialGen) (err error) {
|
||||||
|
xClient, err := client.GetClient(s)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Gen", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Cancel @TITLE 作废
|
||||||
|
func (s *serial) Cancel(ctx context.Context, serialId int64) (err error) {
|
||||||
|
xClient, err := client.GetClient(s)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
reply := 0
|
||||||
|
err = xClient.Call(ctx, "Cancel", serialId, &reply)
|
||||||
|
return
|
||||||
|
}
|
@ -1,10 +1,13 @@
|
|||||||
package shipment
|
package shipment
|
||||||
|
|
||||||
type Shipment struct {
|
type Shipment struct {
|
||||||
Sale sale
|
Sale sale
|
||||||
Cost cost
|
Cost cost
|
||||||
SaleProduct saleProduct
|
SaleProduct saleProduct
|
||||||
Audit audit
|
Audit audit
|
||||||
CustomsCost customsCost
|
CustomsCost customsCost
|
||||||
Gift gift
|
Gift gift
|
||||||
|
Serial serial
|
||||||
|
Customs customs
|
||||||
|
ExchangeSettlement exchangeSettlement
|
||||||
}
|
}
|
||||||
|
14
oa/role.go
14
oa/role.go
@ -94,3 +94,17 @@ func (r *role) SetStaff(ctx context.Context, args ArgsRoleSetStaff) (err error)
|
|||||||
var reply int
|
var reply int
|
||||||
return xClient.Call(ctx, "SetStaff", args, &reply)
|
return xClient.Call(ctx, "SetStaff", args, &reply)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ArgsRoleStaffs struct {
|
||||||
|
Name string // 角色名称
|
||||||
|
}
|
||||||
|
|
||||||
|
// Staffs @TITLE 角色员工
|
||||||
|
func (r *role) Staffs(ctx context.Context, args ArgsRoleStaffs) (reply []StaffItem, err error) {
|
||||||
|
xClient, err := client.GetClient(r)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = xClient.Call(ctx, "Staffs", args, &reply)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user