123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- package fms
- import (
- "hongze/fms_api/global"
- "hongze/fms_api/models/base"
- "hongze/fms_api/utils"
- "time"
- )
- // ContractInvoice 合同开票表
- type ContractPrePayment struct {
- PrePayId int `gorm:"primaryKey;column:pre_pay_id" json:"pre_pay_id" description:"预付款ID"`
- CompanyName string `json:"company_name" description:"客户名称"`
- ContractRegisterId int `gorm:"column:contract_register_id" json:"contract_register_id" description:"登记ID"`
- ContractCode string `gorm:"column:contract_code" json:"contract_code" description:"合同编号"`
- Amount float64 `gorm:"column:amount" json:"amount" description:"换算后的金额(人民币)"`
- OriginAmount float64 `gorm:"column:origin_amount" json:"origin_amount" description:"到款金额"`
- CurrencyUnit string `gorm:"column:currency_unit" json:"currency_unit" description:"货币国际代码"`
- SellerId int `gorm:"column:seller_id" json:"seller_id" description:"销售ID"`
- SellerName string `gorm:"column:seller_name" json:"seller_name" description:"销售名称"`
- AdminId int `gorm:"column:admin_id" json:"admin_id" description:"操作人ID"`
- AdminName string `gorm:"column:admin_name" json:"admin_name" description:"操作人姓名"`
- Remark string `gorm:"column:remark" json:"remark" description:"备注信息"`
- StartDate time.Time `gorm:"column:start_date" json:"start_date" description:"约定开始时间"`
- EndDate time.Time `gorm:"column:end_date" json:"end_date" description:"约定结束时间"`
- NewCompany int `gorm:"column:new_company" json:"new_company" description:"是否为新客户: 0-否; 1-是"`
- base.TimeBase
- }
- type ContractPrePaymentRespItem struct {
- PrePayId int `gorm:"primaryKey;column:pre_pay_id" json:"pre_pay_id" description:"预付款ID"`
- CompanyName string `json:"company_name" description:"客户名称"`
- ContractRegisterId int `gorm:"column:contract_register_id" json:"contract_register_id" description:"登记ID"`
- ContractCode string `gorm:"column:contract_code" json:"contract_code" description:"合同编号"`
- Amount float64 `gorm:"column:amount" json:"amount" description:"换算后的金额(人民币)"`
- OriginAmount float64 `gorm:"column:origin_amount" json:"origin_amount" description:"到款金额"`
- CurrencyUnit string `gorm:"column:currency_unit" json:"currency_unit" description:"货币国际代码"`
- SellerId int `gorm:"column:seller_id" json:"seller_id" description:"销售ID"`
- SellerName string `gorm:"column:seller_name" json:"seller_name" description:"销售名称"`
- AdminId int `gorm:"column:admin_id" json:"admin_id" description:"操作人ID"`
- AdminName string `gorm:"column:admin_name" json:"admin_name" description:"操作人姓名"`
- Remark string `gorm:"column:remark" json:"remark" description:"备注信息"`
- StartDate string `gorm:"column:start_date" json:"start_date" description:"约定开始时间"`
- EndDate string `gorm:"column:end_date" json:"end_date" description:"约定结束时间"`
- NewCompany int `gorm:"column:new_company" json:"new_company" description:"是否为新客户: 0-否; 1-是"`
- CreateTime string `gorm:"autoCreateTime;column:create_time" json:"create_time" description:"创建时间"`
- ModifyTime string `gorm:"autoUpdateTime:milli;column:modify_time" json:"modify_time" description:"最后更新时间"`
- }
- func (c *ContractPrePayment) TableName() string {
- return "contract_pre_payment"
- }
- // ContractRegisterListReq 合同登记列表请求体
- type PrePayListReq struct {
- Keyword string `json:"keyword" form:"keyword" binding:"omitempty" description:"关键词"`
- StartDate string `json:"start_date" form:"start_date" binding:"omitempty,datetime=2006-01-02" description:"约定开始时间"`
- EndDate string `json:"end_date" form:"end_date" binding:"omitempty,datetime=2006-01-02" description:"约定结束时间"`
- SortType int `json:"sort_type" form:"sort_type" description:"排序方式: 1-正序; 2-倒序"`
- base.PageReq
- }
- // GetPrePayItemPageList 获取预登记列表-分页
- func GetPrePayItemPageList(page base.IPage, condition string, pars []interface{}) (count int64, results []*ContractPrePaymentRespItem, err error) {
- list := make([]*ContractPrePayment, 0)
- query := global.DEFAULT_MYSQL.Table("contract_pre_payment").
- Where(condition, pars...)
- query.Count(&count)
- if len(page.GetOrderItemsString()) > 0 {
- query = query.Order(page.GetOrderItemsString())
- }
- err = query.Limit(int(page.GetPageSize())).Offset(int(page.Offset())).Find(&list).Error
- if err != nil {
- return
- }
- for i := range list {
- results = append(results, formatPrePay2Item(list[i]))
- }
- return
- }
- // formatPrePay2Item 格式化PrePay
- func formatPrePay2Item(item *ContractPrePayment) (formatItem *ContractPrePaymentRespItem) {
- formatItem = new(ContractPrePaymentRespItem)
- formatItem.PrePayId = item.PrePayId
- formatItem.ContractRegisterId = item.ContractRegisterId
- formatItem.ContractCode = item.ContractCode
- formatItem.CompanyName = item.CompanyName
- formatItem.SellerId = item.SellerId
- formatItem.SellerName = item.SellerName
- formatItem.Amount = item.Amount
- formatItem.OriginAmount = item.OriginAmount
- formatItem.CurrencyUnit = item.CurrencyUnit
- formatItem.StartDate = utils.TimeTransferString(utils.FormatDate, item.StartDate)
- formatItem.EndDate = utils.TimeTransferString(utils.FormatDate, item.EndDate)
- formatItem.AdminId = item.AdminId
- formatItem.AdminName = item.AdminName
- formatItem.Remark = item.Remark
- formatItem.NewCompany = item.NewCompany
- formatItem.CreateTime = utils.TimeTransferString(utils.FormatDateTime, item.CreateTime)
- formatItem.ModifyTime = utils.TimeTransferString(utils.FormatDateTime, item.ModifyTime)
- return
- }
- // PrepayAddReq 新增到款预登记请求体
- type PrepayAddReq struct {
- CompanyName string `json:"company_name" binding:"required" description:"客户名称"`
- SellerId int `json:"seller_id" binding:"required" description:"CRM系统-销售ID"`
- SellerName string `json:"seller_name" binding:"required" description:"CRM系统-销售名称"`
- Amount float64 `json:"amount" binding:"required" description:"到款金额"`
- CurrencyUnit string `json:"currency_unit" binding:"required" description:"货币单位"`
- StartDate string `json:"start_date" binding:"required" description:"约定开始日期"`
- EndDate string `json:"end_date" binding:"required" description:"约定结束日期"`
- Remark string `json:"remark" description:"备注信息"`
- NewCompany int `json:"new_company" description:"是否为新客户: 0-否; 1-是"`
- }
- func (c *ContractPrePayment) Create() (err error) {
- err = global.DEFAULT_MYSQL.Create(c).Error
- return
- }
- func (c *ContractPrePayment) Fetch(id int) (item *ContractPrePayment, err error) {
- err = global.DEFAULT_MYSQL.Model(c).Where(" pre_pay_id = ?", id).First(&item).Error
- return
- }
- func (c *ContractPrePayment) Update(updateCols []string) (err error) {
- err = global.DEFAULT_MYSQL.Model(c).Select(updateCols).Updates(c).Error
- return
- }
- // ContractRegisterEditReq 编辑合同登记请求体
- type PrepayEditReq struct {
- PrePayId int `json:"pre_pay_id" binding:"required,gte=1" description:"登记ID"`
- PrepayAddReq
- }
|