소스 검색

优化需求257提测

gmy 4 달 전
부모
커밋
838164e9d7
2개의 변경된 파일53개의 추가작업 그리고 10개의 파일을 삭제
  1. 38 10
      controllers/eta_trial.go
  2. 15 0
      models/eta_trial/eta_trial_approval.go

+ 38 - 10
controllers/eta_trial.go

@@ -443,22 +443,50 @@ func (this *ETATrialController) ApplyEnable() {
 		return
 		return
 	}
 	}
 
 
-	var reqList []eta_trial.ETAAddEnableReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &reqList)
+	var req eta_trial.ETAAddApplyReq
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
 	if err != nil {
 	if err != nil {
 		br.Msg = "参数解析异常!"
 		br.Msg = "参数解析异常!"
 		br.ErrMsg = "参数解析失败,Err:" + err.Error()
 		br.ErrMsg = "参数解析失败,Err:" + err.Error()
 		return
 		return
 	}
 	}
 
 
+	if len(req.MobileList) <= 0 {
+		br.Msg = "至少选中一条记录"
+		br.ErrMsg = "至少选中一条记录"
+		return
+	}
+
 	seller, e := system.GetSysAdminById(sysUser.AdminId)
 	seller, e := system.GetSysAdminById(sysUser.AdminId)
 	if e != nil {
 	if e != nil {
 		err = e
 		err = e
 		return
 		return
 	}
 	}
 
 
-	for _, req := range reqList {
-		approval, err := eta_trial.GetETATrialApprovalByMobile(req.Mobile)
+	var condition string
+	var pars []interface{}
+	if req.IsCheckAll {
+		if len(req.MobileList) > 0 {
+			condition += " and mobile not in (" + strings.Join(req.MobileList, ",") + ")"
+			for _, mobile := range req.MobileList {
+				pars = append(pars, mobile)
+			}
+		}
+	} else {
+		if len(req.MobileList) > 0 {
+			condition += " and mobile in (" + strings.Join(req.MobileList, ",") + ")"
+			for _, mobile := range req.MobileList {
+				pars = append(pars, mobile)
+			}
+		}
+	}
+	trialApprovalList, err := eta_trial.GetETATrialApprovalByCondition(condition, pars)
+	if err != nil {
+		return
+	}
+
+	for _, trialApproval := range trialApprovalList {
+		approval, err := eta_trial.GetETATrialApprovalByMobile(trialApproval.Mobile)
 		if err != nil && err.Error() != utils.ErrNoRow() {
 		if err != nil && err.Error() != utils.ErrNoRow() {
 			br.Msg = "获取失败!"
 			br.Msg = "获取失败!"
 			br.ErrMsg = "获取失败,Err:" + err.Error()
 			br.ErrMsg = "获取失败,Err:" + err.Error()
@@ -466,7 +494,7 @@ func (this *ETATrialController) ApplyEnable() {
 		}
 		}
 
 
 		var approvalId int64
 		var approvalId int64
-		if approval != nil && (approval.ApprovalStatus == "驳回" || approval.ApprovalStatus == "已撤回") && req.Mobile == approval.Mobile {
+		if approval != nil && (approval.ApprovalStatus == "驳回" || approval.ApprovalStatus == "已撤回") && trialApproval.Mobile == approval.Mobile {
 			//若是被驳回或撤回后申请且手机号相同的,更新审批记录
 			//若是被驳回或撤回后申请且手机号相同的,更新审批记录
 			err = eta_trial.ResubmitTrial(approval.ApprovalId, req.ApplyReasons)
 			err = eta_trial.ResubmitTrial(approval.ApprovalId, req.ApplyReasons)
 			if err != nil {
 			if err != nil {
@@ -482,10 +510,10 @@ func (this *ETATrialController) ApplyEnable() {
 		} else {
 		} else {
 			//加入审批列表
 			//加入审批列表
 			approvalItem := eta_trial.EtaTrialApproval{
 			approvalItem := eta_trial.EtaTrialApproval{
-				UserName:        req.UserName,
-				CompanyName:     req.CompanyName,
-				Position:        req.Position,
-				Mobile:          req.Mobile,
+				UserName:        trialApproval.UserName,
+				CompanyName:     trialApproval.CompanyName,
+				Position:        trialApproval.Position,
+				Mobile:          trialApproval.Mobile,
 				SellerId:        seller.AdminId,
 				SellerId:        seller.AdminId,
 				Seller:          seller.RealName,
 				Seller:          seller.RealName,
 				CreateTime:      time.Now(),
 				CreateTime:      time.Now(),
@@ -510,7 +538,7 @@ func (this *ETATrialController) ApplyEnable() {
 		msgItem.MessageStatus = 1 // 已读, 不再亮红点, 但是消息要有
 		msgItem.MessageStatus = 1 // 已读, 不再亮红点, 但是消息要有
 		msgItem.Remark = seller.RealName + "申请账号启用"
 		msgItem.Remark = seller.RealName + "申请账号启用"
 		msgItem.Content = seller.RealName + "申请账号启用"
 		msgItem.Content = seller.RealName + "申请账号启用"
-		msgItem.CompanyName = req.CompanyName
+		msgItem.CompanyName = trialApproval.CompanyName
 		msgItem.CreateTime = time.Now()
 		msgItem.CreateTime = time.Now()
 		msgItem.ModifyTime = time.Now()
 		msgItem.ModifyTime = time.Now()
 		msgItem.CompanyApprovalId = int(approvalId)
 		msgItem.CompanyApprovalId = int(approvalId)

+ 15 - 0
models/eta_trial/eta_trial_approval.go

@@ -31,6 +31,15 @@ func GetETATrialApprovalByMobile(mobile string) (item *EtaTrialApproval, err err
 	return
 	return
 }
 }
 
 
+func GetETATrialApprovalByCondition(condition string, pars []interface{}) (item []*EtaTrialApproval, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM eta_trial_approval WHERE 1=1 `
+
+	sql += condition
+	err = o.Raw(sql, pars).QueryRow(&item)
+	return
+}
+
 // AddETATrialApproval 新增审批
 // AddETATrialApproval 新增审批
 func AddETATrialApproval(item *EtaTrialApproval) (lastId int64, err error) {
 func AddETATrialApproval(item *EtaTrialApproval) (lastId int64, err error) {
 	o := orm.NewOrm()
 	o := orm.NewOrm()
@@ -61,6 +70,12 @@ type ETAAddEnableReq struct {
 	ApplyReasons string `description:"申请理由"`
 	ApplyReasons string `description:"申请理由"`
 }
 }
 
 
+type ETAAddApplyReq struct {
+	IsCheckAll   bool     `description:"是否全选"`
+	ApplyReasons string   `description:"申请理由"`
+	MobileList   []string `description:"手机号列表"`
+}
+
 type ETATrialApplyRevokeReq struct {
 type ETATrialApplyRevokeReq struct {
 	Mobile string `description:"客户手机号"`
 	Mobile string `description:"客户手机号"`
 }
 }