Sfoglia il codice sorgente

fix:客户审批 冻结转试用,新增冻结次数

Roc 3 anni fa
parent
commit
7648dea1de

+ 20 - 9
controllers/approval_new.go

@@ -202,6 +202,7 @@ func (c *ApprovalCommon) ListV2() {
 				CompanyContractId: item.CompanyContractId,
 				//DelayPermission   :
 				ApplyRealName: item.ApplyRealName,
+				ApplyUserId:   item.ApplyUserId,
 				OpButton:      ApprovalButton,
 			}
 
@@ -220,20 +221,30 @@ func (c *ApprovalCommon) ListV2() {
 				}
 			}
 
-			approvalCount, err := company_approval.GetCompanyApprovalCount(item.CompanyId, item.ProductId)
-			if err != nil && err.Error() != utils.ErrNoRow() {
-				c.FailWithMessage("获取失败", "获取延期审批次数失败,Err:"+err.Error())
-				return
-			}
-			respTmp.ApprovalCount = approvalCount
-
-			if respTmp.ApplyMethod == 3 {
-				delayPermission, err := company_delay_permission.GetApplyDelayPermission(item.CompanyApprovalId)
+			switch item.ApplyMethod {
+			case 2:
+				//客户冻结转试用次数
+				approvalCount, err := company_approval.GetFreezeToTryCompanyApprovalCount(respTmp.CompanyId, respTmp.ProductId, respTmp.ApplyUserId)
+				if err != nil && err.Error() != utils.ErrNoRow() {
+					c.FailWithMessage("获取失败", "获取冻结转试用审批次数失败,Err:"+err.Error())
+					return
+				}
+				respTmp.ApprovalCount = approvalCount
+			case 3:
+				delayPermission, err := company_delay_permission.GetApplyDelayPermission(respTmp.CompanyApprovalId)
 				if err != nil && err.Error() != utils.ErrNoRow() {
 					c.FailWithMessage("获取失败", "获取延期审批权限失败,Err:"+err.Error())
 					return
 				}
 				respTmp.DelayPermission = delayPermission
+
+				//客户审批试用延期次数
+				approvalCount, err := company_approval.GetCompanyTryDelayApprovalCount(respTmp.CompanyId, respTmp.ProductId)
+				if err != nil && err.Error() != utils.ErrNoRow() {
+					c.FailWithMessage("获取失败", "获取延期审批次数失败,Err:"+err.Error())
+					return
+				}
+				respTmp.ApprovalCount = approvalCount
 			}
 			respList = append(respList, respTmp)
 		}

+ 13 - 2
models/tables/company_approval/company_approval.go

@@ -118,6 +118,8 @@ type CompanyApprovalList struct {
 	ApproveRoleTypeCode string `description:"审批人角色类型" json:"-"`
 	OpButton            bool   `description:"是否审批操作权限"`
 	CurrNodeId          int    `description:"当前审批操作节点"`
+	ApplyContractType   int    `description:"申请合同类型  0 非标  1 标准"`
+	ApplyUserId         int    `description:"申请人编号id" json:"-"`
 }
 
 // GetApprovalList 获取客户单列表
@@ -126,7 +128,7 @@ func GetApprovalList(condition string, pars []interface{}, startSize, pageSize i
 	sql := `SELECT a.company_id,b.product_id,a.company_name,a.credit_code,a.address,b.company_type,b.industry_name,
 			b.seller_name,b.create_time,b.freeze_start_date,b.freeze_end_date,b.source,c.create_time AS approval_time,c.approve_time,b.status,
             c.approve_content,c.approve_status,c.apply_method,c.apply_reasons,c.approve_remark,b.start_date,b.end_date,c.company_approval_id,c.company_contract_id,
-            c.apply_real_name,c.approve_role_type_code
+            c.apply_real_name,c.approve_role_type_code,c.apply_user_id
 			FROM company AS a
 			INNER JOIN company_product AS b ON a.company_id=b.company_id
 			INNER JOIN company_approval AS c ON b.company_id=c.company_id AND b.product_id=c.product_id
@@ -893,13 +895,22 @@ func ModifyCompanyApproval(companyId, productId, companyApprovalId int, approveC
 //	return
 //}
 
-func GetCompanyApprovalCount(companyId, productId int) (count int, err error) {
+// GetCompanyTryDelayApprovalCount 获取客户延期申请次数
+func GetCompanyTryDelayApprovalCount(companyId, productId int) (count int, err error) {
 	sql := `SELECT COUNT(1) AS count FROM company_approval WHERE company_id=? AND product_id=? AND  approve_content='试用延期' `
 	o := orm.NewOrm()
 	err = o.Raw(sql, companyId, productId).QueryRow(&count)
 	return
 }
 
+// GetFreezeToTryCompanyApprovalCount 客户冻结转试用次数
+func GetFreezeToTryCompanyApprovalCount(companyId, productId, applyUserId int) (count int, err error) {
+	sql := `SELECT COUNT(1) AS count FROM company_approval WHERE company_id=? AND product_id=? AND  approve_content='冻结转试用' and apply_user_id = ? `
+	o := orm.NewOrm()
+	err = o.Raw(sql, companyId, productId, applyUserId).QueryRow(&count)
+	return
+}
+
 // GetApprovalListByApprovalIds 根据申请id字符串来获取申请单列表
 func GetApprovalListByApprovalIds(companyApprovalIds string) (list []*CompanyApproval, err error) {
 	o := orm.NewOrm()