param_credit_account.go 3.9 KB
package allied_creation_cooperation

import (
	"time"

	"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain"
)

type CreditAccount struct {
	CreditAccountId           int64     `json:"creditAccountId,string"`    // 账期结算单ID
	ActuallyPaidAmount        float64   `json:"actuallyPaidAmount"`        // 账期结算实付金额
	CreditAccountOrderNum     string    `json:"creditAccountOrderNum"`     // 账期结算单号
	PaymentStatus             int       `json:"paymentStatus"`             // 账期结算支付状态,1待支付,2已支付
	PaymentTime               time.Time `json:"paymentTime"`               // 共创账期结算支付时间
	SettlementAmount          float64   `json:"settlementAmount"`          // 账期结算金额
	SettlementTime            time.Time `json:"settlementTime"`            // 共创账期结算时间
	CooperationContractNumber string    `json:"cooperationContractNumber"` // 关联共创合约编号
	// 参与人uid,包括承接人、推荐人、关联业务员
	Participator struct {
		UserId     int64             `json:"userId,string"`     // 用户ID,
		UserBaseId int64             `json:"userBaseId,string"` // 用户基本id
		Org        domain.Org        `json:"org"`               // 用户所属的组织机构
		Department domain.Department `json:"department"`        // 用户所属的部门
		UserInfo   domain.UserInfo   `json:"userInfo"`          //
		UserName   string            `json:"userName"`          // 用户姓名
		UserPhone  string            `json:"userPhone"`         // 用户手机号
		UserType   int32             `json:"userType"`          // 用户类型,1员工,2共创用户,3公开
		Status     int32             `json:"status"`            // 状态
	} `json:"participator"`
	// 参与类型
	ParticipateType string `json:"participateType"`
	// 支付凭证附件
	PaymentDocumentAttachment domain.Attachment `json:"paymentDocumentAttachment"`
	// 数据所属组织机构
	Org domain.Org `json:"org"`
	// 公司
	Company domain.CompanyData `json:"company"`
	// 创建时间
	CreatedAt time.Time `json:"createdAt"`
	// 更新时间
	UpdatedAt time.Time `json:"updatedAt"`
}

//创建账期结算单
type (
	ReqCreditAccountCreate struct {
	}

	DataCreditAccountCreate struct {
	}
)

//支付账期结算
type (
	ReqCreditAccountsPay struct {
		CreditAccountId    int               `json:"creditAccountId"`
		ActuallyPaidAmount float64           `json:"actuallyPaidAmount"`
		Remarks            string            `json:"remarks"`
		Attachment         domain.Attachment `json:"attachment"` //附件
	}

	DataCreditAccountsPay struct {
	}
)

//更新账期结算单
type (
	ReqCreditAccountUpdate struct {
	}

	DataCreditAccountUpdate struct {
	}
)

//查询账期结算单
type (
	ReqCreditAccountsSearch struct {
		// 页面大小
		PageNumber int64 `json:"pageNumber,omitempty"`
		// 页面大小
		PageSize int64 `json:"pageSize,omitempty"`
		// 账期结算单号
		CreditAccountOrderNum string `json:"creditAccountOrderNum" valid:"Required"`
		// 参与人姓名
		ParticipatorName string ` json:"participatorName,omitempty"`
		// 账期结算支付状态,1待支付,2已支付,APP端结算记录返回已结算的账期结算单
		PaymentStatus int32 `json:"paymentStatus" valid:"Required"`
		// 结算周期,按年“2021”或者按月结算”2021-07“
		Period time.Time `json:"period,omitempty"`
	}

	DataCreditAccountsSearch struct {
		Grid struct {
			Total int             `json:"total"`
			List  []CreditAccount `json:"list"`
		} `json:"grid"`
	}
)

//移除账期结算单
type (
	ReqCreditAccountRemove struct {
		CreditAccountId int `json:"creditAccountId"`
	}

	DataCreditAccountRemove struct {
	}
)

//返回账期结算单列表
type (
	ReqCreditAccountList struct {
	}

	DataCreditAccountList struct {
	}
)

//返回账期结算单详情
type (
	ReqCreditAccountGet struct {
		CreditAccountId int `json:"creditAccountId"`
	}

	DataCreditAccountGet struct {
		CreditAccount
	}
)