Explorar el Código

余额管理&账单查询

Ethan hace 1 día
padre
commit
e5ba907a77

+ 31 - 45
.idea/workspace.xml

@@ -4,32 +4,14 @@
     <option name="autoReloadType" value="ALL" />
   </component>
   <component name="ChangeListManager">
-    <list default="true" id="f4dc82b3-ff8e-4683-8d94-679b27583f09" name="Changes" comment="">
-      <change afterPath="$PROJECT_DIR$/db/platform_kuaishou_user.go" afterDir="false" />
+    <list default="true" id="f4dc82b3-ff8e-4683-8d94-679b27583f09" name="Changes" comment="关闭定时任务">
+      <change beforePath="$PROJECT_DIR$/.gitignore" beforeDir="false" afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/db/finance.go" beforeDir="false" afterPath="$PROJECT_DIR$/db/finance.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/db/logistics.go" beforeDir="false" afterPath="$PROJECT_DIR$/db/logistics.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/db/operate.go" beforeDir="false" afterPath="$PROJECT_DIR$/db/operate.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/db/sectask.go" beforeDir="false" afterPath="$PROJECT_DIR$/db/sectask.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/db/selection.go" beforeDir="false" afterPath="$PROJECT_DIR$/db/selection.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/handler/CreateSecTaskLogistics.go" beforeDir="false" afterPath="$PROJECT_DIR$/handler/CreateSecTaskLogistics.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/handler/GetSecTaskList.go" beforeDir="false" afterPath="$PROJECT_DIR$/handler/GetSecTaskList.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/handler/PassSecTaskCoop.go" beforeDir="false" afterPath="$PROJECT_DIR$/handler/PassSecTaskCoop.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/handler/RefuseSecTaskCoop.go" beforeDir="false" afterPath="$PROJECT_DIR$/handler/RefuseSecTaskCoop.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/handler/SettleSecTask.go" beforeDir="false" afterPath="$PROJECT_DIR$/handler/SettleSecTask.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/handler/UpdateSecTaskLogistics.go" beforeDir="false" afterPath="$PROJECT_DIR$/handler/UpdateSecTaskLogistics.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/gorm_model/selection_info.go" beforeDir="false" afterPath="$PROJECT_DIR$/model/gorm_model/selection_info.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/gorm_model/selection_task_info.go" beforeDir="false" afterPath="$PROJECT_DIR$/model/gorm_model/selection_task_info.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/http_model/CreateSecTaskLogisticsRequest.go" beforeDir="false" afterPath="$PROJECT_DIR$/model/http_model/CreateSecTaskLogisticsRequest.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/http_model/GetSecTaskListRequest.go" beforeDir="false" afterPath="$PROJECT_DIR$/model/http_model/GetSecTaskListRequest.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/http_model/PassSecTaskCoopRequest.go" beforeDir="false" afterPath="$PROJECT_DIR$/model/http_model/PassSecTaskCoopRequest.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/model/http_model/RefuseSecTaskCoopRequest.go" beforeDir="false" afterPath="$PROJECT_DIR$/model/http_model/RefuseSecTaskCoopRequest.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/pack/sec_task_list.go" beforeDir="false" afterPath="$PROJECT_DIR$/pack/sec_task_list.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/dao/project_dao.go" beforeDir="false" afterPath="$PROJECT_DIR$/app/dao/project_dao.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/dao/selection_info_dao.go" beforeDir="false" afterPath="$PROJECT_DIR$/app/dao/selection_info_dao.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/service/recharge_service.go" beforeDir="false" afterPath="$PROJECT_DIR$/app/service/recharge_service.go" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/vo/balance_param.go" beforeDir="false" afterPath="$PROJECT_DIR$/app/vo/balance_param.go" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/route/init.go" beforeDir="false" afterPath="$PROJECT_DIR$/route/init.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/service/logistics.go" beforeDir="false" afterPath="$PROJECT_DIR$/service/logistics.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/service/sec_task.go" beforeDir="false" afterPath="$PROJECT_DIR$/service/sec_task.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/service/sec_task_logistics.go" beforeDir="false" afterPath="$PROJECT_DIR$/service/sec_task_logistics.go" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/service/selection.go" beforeDir="false" afterPath="$PROJECT_DIR$/service/selection.go" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -60,28 +42,28 @@
     <option name="hideEmptyMiddlePackages" value="true" />
     <option name="showLibraryContents" value="true" />
   </component>
-  <component name="PropertiesComponent">{
-  &quot;keyToString&quot;: {
-    &quot;DefaultGoTemplateProperty&quot;: &quot;Go File&quot;,
-    &quot;Go Build.go build youngee_m_api.executor&quot;: &quot;Run&quot;,
-    &quot;RunOnceActivity.GoLinterPluginOnboarding&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.GoLinterPluginStorageMigration&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.git.unshallow&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.go.formatter.settings.were.checked&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.go.migrated.go.modules.settings&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.go.modules.automatic.dependencies.download&quot;: &quot;true&quot;,
-    &quot;RunOnceActivity.go.modules.go.list.on.any.changes.was.set&quot;: &quot;true&quot;,
-    &quot;git-widget-placeholder&quot;: &quot;develop&quot;,
-    &quot;go.import.settings.migrated&quot;: &quot;true&quot;,
-    &quot;go.sdk.automatically.set&quot;: &quot;true&quot;,
-    &quot;last_opened_file_path&quot;: &quot;C:/Users/XingYuXian&quot;,
-    &quot;node.js.detected.package.eslint&quot;: &quot;true&quot;,
-    &quot;node.js.selected.package.eslint&quot;: &quot;(autodetect)&quot;,
-    &quot;nodejs_package_manager_path&quot;: &quot;npm&quot;,
-    &quot;settings.editor.selected.configurable&quot;: &quot;go.vgo&quot;
+  <component name="PropertiesComponent"><![CDATA[{
+  "keyToString": {
+    "DefaultGoTemplateProperty": "Go File",
+    "Go Build.go build youngee_m_api.executor": "Debug",
+    "RunOnceActivity.GoLinterPluginOnboarding": "true",
+    "RunOnceActivity.GoLinterPluginStorageMigration": "true",
+    "RunOnceActivity.ShowReadmeOnStart": "true",
+    "RunOnceActivity.git.unshallow": "true",
+    "RunOnceActivity.go.formatter.settings.were.checked": "true",
+    "RunOnceActivity.go.migrated.go.modules.settings": "true",
+    "RunOnceActivity.go.modules.automatic.dependencies.download": "true",
+    "RunOnceActivity.go.modules.go.list.on.any.changes.was.set": "true",
+    "git-widget-placeholder": "zhou",
+    "go.import.settings.migrated": "true",
+    "go.sdk.automatically.set": "true",
+    "last_opened_file_path": "C:/Users/XingYuXian",
+    "node.js.detected.package.eslint": "true",
+    "node.js.selected.package.eslint": "(autodetect)",
+    "nodejs_package_manager_path": "npm",
+    "settings.editor.selected.configurable": "go.vgo"
   }
-}</component>
+}]]></component>
   <component name="RunManager">
     <configuration name="go build youngee_m_api" type="GoApplicationRunConfiguration" factoryName="Go Application" nameIsGenerated="true">
       <module name="younggee_m_api" />
@@ -115,6 +97,10 @@
   <component name="TypeScriptGeneratedFilesManager">
     <option name="version" value="3" />
   </component>
+  <component name="VcsManagerConfiguration">
+    <MESSAGE value="关闭定时任务" />
+    <option name="LAST_COMMIT_MESSAGE" value="关闭定时任务" />
+  </component>
   <component name="VgoProject">
     <environment>
       <map>

+ 32 - 0
app/dao/project_dao.go

@@ -332,6 +332,22 @@ func (d ProjectDAO) GetProjectFrozenList(enterpriseId string) ([]*entity.Project
 	return projects, nil
 }
 
+// 获取所有品牌种草冻结中的任务
+func (d ProjectDAO) GetProjectFrozenListAll() ([]*entity.Project, error) {
+	var projects []*entity.Project
+	query := Db.Debug().Model(entity.Project{})
+	query.Select("project_id, product_id, enterprise_id, sub_account_id, project_platform, payment_amount, pay_at") // 冻结金额:payment_amount
+	err := query.Where(fmt.Sprintf("project_type = ? AND (project_status between 7 and 8) "), 1).Find(&projects).Error
+	if err != nil {
+		if errors.Is(err, gorm.ErrRecordNotFound) {
+			return projects, nil
+		} else {
+			return nil, err
+		}
+	}
+	return projects, nil
+}
+
 // 获取品牌种草冻结解除的任务
 func (d ProjectDAO) GetProjectFrozenCancelList(enterpriseId string) ([]*entity.Project, error) {
 	var projects []*entity.Project
@@ -348,6 +364,22 @@ func (d ProjectDAO) GetProjectFrozenCancelList(enterpriseId string) ([]*entity.P
 	return projects, nil
 }
 
+// 获取所有品牌种草冻结解除的任务
+func (d ProjectDAO) GetProjectFrozenCancelListAll() ([]*entity.Project, error) {
+	var projects []*entity.Project
+	query := Db.Debug().Model(entity.Project{})
+	query.Select("project_id, product_id, enterprise_id, sub_account_id, project_platform, settlement_amount, pay_at") // 解冻金额:settlement_amount
+	err := query.Where(fmt.Sprintf("project_type = ? AND (project_status between 9 and 10) "), 1).Find(&projects).Error
+	if err != nil {
+		if errors.Is(err, gorm.ErrRecordNotFound) {
+			return projects, nil
+		} else {
+			return nil, err
+		}
+	}
+	return projects, nil
+}
+
 // 获取品牌种草账单列表
 func (d ProjectDAO) GetBillProjectPreviews(param *vo.ProjectSearchParam) ([]vo.ReBillProjectTaskPreview, int64, error) {
 	var reBillProjectTaskPreviews []vo.ReBillProjectTaskPreview

+ 32 - 0
app/dao/selection_info_dao.go

@@ -216,6 +216,22 @@ func (d SelectionInfoDAO) GetSelectionFrozenList(enterpriseId string) ([]*entity
 	return selectionInfos, nil
 }
 
+// 获取所有电商带货冻结中的任务
+func (d SelectionInfoDAO) GetSelectionFrozenListAll() ([]*entity.SelectionInfo, error) {
+	var selectionInfos []*entity.SelectionInfo
+	query := Db.Debug().Model(entity.SelectionInfo{})
+	query.Select("selection_id, product_id, enterprise_id, sub_account_id, platform, estimated_cost, pay_at") // 冻结金额:estimated_cost
+	err := query.Where(fmt.Sprintf("selection_status between 5 and 6")).Find(&selectionInfos).Error
+	if err != nil {
+		if errors.Is(err, gorm.ErrRecordNotFound) {
+			return selectionInfos, nil
+		} else {
+			return nil, err
+		}
+	}
+	return selectionInfos, nil
+}
+
 // 获取电商带货冻结解除的任务
 func (d SelectionInfoDAO) GetSelectionFrozenCancelList(enterpriseId string) ([]*entity.SelectionInfo, error) {
 	var selectionInfos []*entity.SelectionInfo
@@ -232,6 +248,22 @@ func (d SelectionInfoDAO) GetSelectionFrozenCancelList(enterpriseId string) ([]*
 	return selectionInfos, nil
 }
 
+// 获取所有电商带货冻结解除的任务
+func (d SelectionInfoDAO) GetSelectionFrozenCancelListAll() ([]*entity.SelectionInfo, error) {
+	var selectionInfos []*entity.SelectionInfo
+	query := Db.Debug().Model(entity.SelectionInfo{})
+	query.Select("selection_id, product_id, enterprise_id, sub_account_id, platform, settlement_amount, pay_at") // 解冻金额:settlement_amount
+	err := query.Where(fmt.Sprintf("selection_status between 7 and 8")).Find(&selectionInfos).Error
+	if err != nil {
+		if errors.Is(err, gorm.ErrRecordNotFound) {
+			return selectionInfos, nil
+		} else {
+			return nil, err
+		}
+	}
+	return selectionInfos, nil
+}
+
 // 获取带货账单列表
 func (d SelectionInfoDAO) GetBillSelectionPreviews(param *vo.SelectionSearchParam) ([]vo.ReBillSelectionTaskPreview, int64, error) {
 	var reBillSelectionTaskPreviews []vo.ReBillSelectionTaskPreview

+ 22 - 13
app/service/recharge_service.go

@@ -185,17 +185,26 @@ func (s RechargeService) QueryOrderByTradeId(enterpriseId string, subAccountId i
 // 余额管理——总金额、可用余额、冻结金额
 func (s RechargeService) ShowBalance(param *vo.BalanceParam) (*vo.ReBalanceShow, error) {
 	reBalanceShow := new(vo.ReBalanceShow)
-	enterprise, err := dao.EnterpriseDao{}.GetEnterpriseInfo(param.EnterpriseId)
+	var enterprises []entity.Enterprise
+	err := dao.Db.Model(&entity.Enterprise{}).Find(&enterprises).Error
 	if err != nil {
 		if errors.Is(err, gorm.ErrRecordNotFound) {
-			return reBalanceShow, nil
+			return nil, nil
 		} else {
 			return nil, err
 		}
 	}
-	reBalanceShow.TotalBalance = enterprise.Balance
-	reBalanceShow.AvailBalance = enterprise.AvailableBalance
-	reBalanceShow.FrozenBalance = enterprise.FrozenBalance
+	var balance float64
+	var availBalance float64
+	var frozenBalance float64
+	for _, enterprise := range enterprises {
+		balance += enterprise.Balance
+		availBalance += enterprise.AvailableBalance
+		frozenBalance += enterprise.FrozenBalance
+	}
+	reBalanceShow.TotalBalance = balance
+	reBalanceShow.AvailBalance = availBalance
+	reBalanceShow.FrozenBalance = frozenBalance
 	return reBalanceShow, nil
 }
 
@@ -213,16 +222,16 @@ func (s RechargeService) FrozenInfoList(param *vo.BalanceParam) (vo.ResultVO, er
 	var projects []*entity.Project
 	if param.FrozenState == 1 {
 		// 电商带货
-		selectionInfos, _ = dao.SelectionInfoDAO{}.GetSelectionFrozenList(param.EnterpriseId)
+		selectionInfos, _ = dao.SelectionInfoDAO{}.GetSelectionFrozenListAll()
 		// 品牌种草
-		projects, _ = dao.ProjectDAO{}.GetProjectFrozenList(param.EnterpriseId)
+		projects, _ = dao.ProjectDAO{}.GetProjectFrozenListAll()
 		// 本地生活
 
 	} else {
 		// 电商带货
-		selectionInfos, _ = dao.SelectionInfoDAO{}.GetSelectionFrozenCancelList(param.EnterpriseId)
+		selectionInfos, _ = dao.SelectionInfoDAO{}.GetSelectionFrozenCancelListAll()
 		// 品牌种草
-		projects, _ = dao.ProjectDAO{}.GetProjectFrozenCancelList(param.EnterpriseId)
+		projects, _ = dao.ProjectDAO{}.GetProjectFrozenCancelListAll()
 		// 本地生活
 
 	}
@@ -347,11 +356,11 @@ func (t RechargeService) FrozenInfoCount(param *vo.BalanceParam) map[string]int6
 	var blockReleaseNum1 int64
 	var blockReleaseNum2 int64
 	// 冻结中
-	dao.Db.Model(entity.SelectionInfo{}).Where(fmt.Sprintf("enterprise_id = ? AND (selection_status between 5 and 6) "), param.EnterpriseId).Count(&blockNum1)
-	dao.Db.Model(entity.Project{}).Where(fmt.Sprintf("enterprise_id = ? AND project_type = ? AND (project_status between 7 and 8) "), param.EnterpriseId, 1).Count(&blockNum2)
+	dao.Db.Model(entity.SelectionInfo{}).Where(fmt.Sprintf("selection_status between 5 and 6")).Count(&blockNum1)
+	dao.Db.Model(entity.Project{}).Where(fmt.Sprintf("project_type = ? AND (project_status between 7 and 8) "), 1).Count(&blockNum2)
 	// 冻结解除
-	dao.Db.Model(entity.SelectionInfo{}).Where(fmt.Sprintf("enterprise_id = ? AND (selection_status between 7 and 8) "), param.EnterpriseId).Count(&blockReleaseNum1)
-	dao.Db.Model(entity.Project{}).Where(fmt.Sprintf("enterprise_id = ? AND project_type = ? AND (project_status between 9 and 10) "), param.EnterpriseId, 1).Count(&blockReleaseNum2)
+	dao.Db.Model(entity.SelectionInfo{}).Where(fmt.Sprintf("selection_status between 7 and 8")).Count(&blockReleaseNum1)
+	dao.Db.Model(entity.Project{}).Where(fmt.Sprintf("project_type = ? AND (project_status between 9 and 10) "), 1).Count(&blockReleaseNum2)
 
 	res["blockNum"] = blockNum1 + blockNum2
 	res["blockReleaseNum"] = blockReleaseNum1 + blockReleaseNum2

+ 4 - 4
app/vo/balance_param.go

@@ -1,10 +1,10 @@
 package vo
 
 type BalanceParam struct {
-	EnterpriseId string `json:"enterprise_id"` // 企业id
-	FrozenState  int64  `json:"frozen_state"`  // 冻结状态(1冻结中 2冻结解除)
-	Page         int    `json:"page"`
-	PageSize     int    `json:"page_size"`
+	//EnterpriseId string `json:"enterprise_id"` // 企业id
+	FrozenState int64 `json:"frozen_state"` // 冻结状态(1冻结中 2冻结解除)
+	Page        int   `json:"page"`
+	PageSize    int   `json:"page_size"`
 
 	Others string `json:"others"` // 任务标题/任务ID/创建者
 }

+ 8 - 0
route/init.go

@@ -194,6 +194,10 @@ func InitRoute(r *gin.Engine) {
 	{
 		f.Use(middleware.LoginAuthMiddleware)
 
+		f.POST("/balance/show", controller.FinanceController{}.ShowBalance)             // 余额管理——总金额、可用余额、冻结金额
+		f.POST("/balance/frozen/info", controller.FinanceController{}.FrozenInfoList)   // 余额管理——冻结记录
+		f.POST("/balance/frozen/count", controller.FinanceController{}.FrozenInfoCount) // 余额管理——冻结记录-角标
+
 		f.GET("/getRechargeValue", handler.WrapGetRechargeValueHandler)      //获取充值确认金额
 		f.POST("/getPreRechargelist", handler.WrapGetPreRechargeListHandler) //充值待确认、确认、失败列表
 		f.POST("/acceptraecharge", handler.WrapAcceptRechargeHandler)        //同意充值
@@ -221,6 +225,10 @@ func InitRoute(r *gin.Engine) {
 		f.GET("/withdrawvalue", handler.WarpGetWithdrawValueHandler)                   //累计提现金额
 		f.POST("/getTalentWithdrawlist", handler.WrapGetTalentWithdrawListHandler)     //达人待/已提现、已驳回列表
 
+		f.POST("/bill/selection/list", controller.BillController{}.SelectionBillList) // 账单查询-电商带货列表
+		f.POST("/bill/project/list", controller.BillController{}.ProjectBillList)     // 账单查询-品牌种草列表
+		f.POST("/bill/local/list", controller.BillController{}.LocalLifeBillList)     // 账单查询-本地生活列表
+
 		f.POST("/getInvoiveinfo", handler.WrapGetInvoiceInfoHandler) //查看开票信息
 		f.POST("/getbilllist", handler.WrapGetBillTaskListHandler)   //查看账单