contract_register_log.go 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package fms
  2. import (
  3. "hongze/fms_api/global"
  4. "hongze/fms_api/utils"
  5. "time"
  6. )
  7. // ContractRegisterLog 合同登记操作记录表
  8. type ContractRegisterLog struct {
  9. Id int `gorm:"primaryKey;column:id" json:"id" description:"记录ID"`
  10. ContractRegisterId int `gorm:"column:contract_register_id" json:"contract_register_id" description:"登记ID"`
  11. AdminId int `gorm:"column:admin_id" json:"admin_id" description:"操作人ID"`
  12. AdminName string `gorm:"column:admin_name" json:"admin_name" description:"当时操作人姓名"`
  13. OpData string `gorm:"column:op_data" json:"op_data" description:"操作数据-JSON"`
  14. OpType int `gorm:"column:op_type" json:"op_type" description:"操作类型: 1-合规登记; 2-开票登记; 3-到款登记; 4-修改合同状态; 5-删除合同登记; 6-合规编辑"`
  15. Remark string `gorm:"column:remark" json:"remark" description:"备注信息"`
  16. AmountRemark string `gorm:"column:amount_remark" json:"amount_remark" description:"金额描述"`
  17. CreateTime time.Time `gorm:"autoCreateTime;column:create_time" json:"create_time" description:"创建时间"`
  18. }
  19. // ContractRegisterLogItem 合同登记-操作记录表
  20. type ContractRegisterLogItem struct {
  21. ContractRegisterId int `gorm:"column:contract_register_id" json:"contract_register_id" description:"登记ID"`
  22. AdminId int `gorm:"column:admin_id" json:"admin_id" description:"操作人ID"`
  23. AdminName string `gorm:"column:admin_name" json:"admin_name" description:"当时操作人姓名"`
  24. OpData string `gorm:"column:op_data" json:"-" description:"操作数据-JSON"`
  25. OpType int `gorm:"column:op_type" json:"op_type" description:"操作类型: 1-合规登记; 2-开票登记; 3-到款登记; 4-修改合同状态; 5-删除合同登记;"`
  26. Remark string `gorm:"column:remark" json:"remark" description:"备注信息"`
  27. AmountRemark string `gorm:"column:amount_remark" json:"amount_remark" description:"金额描述"`
  28. CreateTime string `gorm:"autoCreateTime;column:create_time" json:"create_time" description:"创建时间"`
  29. }
  30. func (c *ContractRegisterLog) TableName() string {
  31. return "contract_register_log"
  32. }
  33. func (c *ContractRegisterLog) Create() (err error) {
  34. err = global.DEFAULT_MYSQL.Create(c).Error
  35. return
  36. }
  37. func (c *ContractRegisterLog) AddInBatches(list []*ContractRegisterLog) (err error) {
  38. err = global.DEFAULT_MYSQL.CreateInBatches(list, len(list)).Error
  39. return
  40. }
  41. func (c *ContractRegisterLog) List(condition string, pars []interface{}) (list []*ContractRegisterLog, err error) {
  42. list = make([]*ContractRegisterLog, 0)
  43. err = global.DEFAULT_MYSQL.Model(c).
  44. Where(condition, pars...).
  45. Find(&list).Error
  46. return
  47. }
  48. // GetContractRegisterLogItemList 获取合同登记操作记录
  49. func GetContractRegisterLogItemList(condition string, pars []interface{}) (itemList []*ContractRegisterLogItem, err error) {
  50. list := make([]*ContractRegisterLog, 0)
  51. err = global.DEFAULT_MYSQL.Model(ContractRegisterLog{}).
  52. Where(condition, pars...).
  53. Order("create_time DESC").
  54. Find(&list).Error
  55. if err != nil {
  56. return
  57. }
  58. itemList = formatContractRegisterLog2ItemList(list)
  59. return
  60. }
  61. // formatContractRegisterLog2ItemList 格式化ContractRegisterLog
  62. func formatContractRegisterLog2ItemList(list []*ContractRegisterLog) (itemList []*ContractRegisterLogItem) {
  63. itemList = make([]*ContractRegisterLogItem, 0)
  64. for i := range list {
  65. itemList = append(itemList, &ContractRegisterLogItem{
  66. ContractRegisterId: list[i].ContractRegisterId,
  67. AdminId: list[i].AdminId,
  68. AdminName: list[i].AdminName,
  69. OpData: list[i].OpData,
  70. OpType: list[i].OpType,
  71. Remark: list[i].Remark,
  72. AmountRemark: list[i].AmountRemark,
  73. CreateTime: utils.TimeTransferString(utils.FormatDateTime, list[i].CreateTime),
  74. })
  75. }
  76. return
  77. }