部署
This commit is contained in:
parent
afabe1816b
commit
844533c5db
@ -57,6 +57,7 @@ type ProductListItem struct {
|
||||
QuoteFactoryName string `json:"quoteFactoryName"`
|
||||
QuoteStartNum int64 `json:"quoteStartNum"`
|
||||
QuoteMeasureUnit string `json:"quoteMeasureUnit"`
|
||||
OuterNum *int64 `json:"outerNum"`
|
||||
Currency string `json:"currency"`
|
||||
CurrencyName string `json:"currencyName"`
|
||||
CurrencySymbol string `json:"currencySymbol"`
|
||||
@ -112,6 +113,7 @@ type ProductItem struct {
|
||||
QuoteFactoryName string `json:"quoteFactoryName"`
|
||||
QuoteStartNum int64 `json:"quoteStartNum"`
|
||||
QuoteMeasureUnit string `json:"quoteMeasureUnit"`
|
||||
OuterNum *int64 `json:"outerNum"`
|
||||
Currency string `json:"currency"`
|
||||
CurrencyName string `json:"currencyName"`
|
||||
CurrencySymbol string `json:"currencySymbol"`
|
||||
|
@ -17,9 +17,13 @@ type ArgsShipmentList struct {
|
||||
Search ShipmentSearch
|
||||
}
|
||||
type ShipmentSearch struct {
|
||||
InvoiceSerial string // 出运发票号
|
||||
CustomIds []int64 // 客户筛选
|
||||
StaffIds []int64 // 业务员筛选
|
||||
InvoiceSerial string // 出运发票号
|
||||
CustomIds []int64 // 客户筛选
|
||||
StaffIds []int64 // 业务员筛选
|
||||
WorkflowStatus []int64 // 审核状态
|
||||
IsSerial int64 // 是否商检
|
||||
IsCustoms int64 // 是否报关
|
||||
IsExchangeSettlement int64 // 是否结汇
|
||||
}
|
||||
type ReplyShipmentList struct {
|
||||
List []ShipmentItem `json:"list"`
|
||||
@ -36,6 +40,7 @@ type ShipmentItem struct {
|
||||
EstSailingDate *time.Time `json:"estSailingDate"`
|
||||
ShipPort string `json:"shipPort"`
|
||||
DischargePort string `json:"dischargePort"`
|
||||
WorkflowStatus int64 `json:"workflowStatus"`
|
||||
CreatedStaffId int64 `json:"createdStaffId"`
|
||||
CreatedAt *time.Time `json:"createdAt"`
|
||||
UpdatedAt *time.Time `json:"updatedAt"`
|
||||
@ -56,7 +61,8 @@ type ArgsShipmentAdd struct {
|
||||
ShipmentAdd ShipmentAdd
|
||||
}
|
||||
type ShipmentAdd struct {
|
||||
CustomID int64 // 客户id
|
||||
CustomId int64 // 客户id
|
||||
VouchingClerkId int64 // 单证id
|
||||
EstSailingDate *time.Time // 预计船期
|
||||
InvoiceSerial string // 发票号
|
||||
InvoiceDate time.Time // 发票日期
|
||||
@ -124,74 +130,8 @@ func (s *shipment) Add(ctx context.Context, args ArgsShipmentAdd) (shipmentId in
|
||||
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 详情
|
||||
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)
|
||||
if err != nil {
|
||||
return
|
||||
@ -259,6 +199,7 @@ type ArgsShipmentData struct {
|
||||
TaxExemptionNature string // 征免性质
|
||||
MarkText string // 唛头文字
|
||||
MarkImg string // 唛头图片
|
||||
VouchingClerkId int64 // 单证id
|
||||
}
|
||||
|
||||
// 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"`
|
||||
}
|
||||
type ArgsSaleProductSearch struct {
|
||||
ShipmentId int64 // 出舱单
|
||||
SaleIds []int64 // 销售合同
|
||||
PiSerial string // pi号
|
||||
ShipmentId int64 // 出舱单
|
||||
SaleIds []int64 // 销售合同
|
||||
PiSerial string // pi号
|
||||
ShipmentSaleProductIds []int64 // 出舱单商品id
|
||||
}
|
||||
|
||||
// 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
|
||||
|
||||
type Shipment struct {
|
||||
Sale sale
|
||||
Cost cost
|
||||
SaleProduct saleProduct
|
||||
Audit audit
|
||||
CustomsCost customsCost
|
||||
Gift gift
|
||||
Sale sale
|
||||
Cost cost
|
||||
SaleProduct saleProduct
|
||||
Audit audit
|
||||
CustomsCost customsCost
|
||||
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
|
||||
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