|
@@ -3,22 +3,10 @@ package controllers
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
"fmt"
|
|
|
- approval2 "hongze/hongze_mobile_admin/models/request/approval"
|
|
|
- "hongze/hongze_mobile_admin/models/response/approval"
|
|
|
"hongze/hongze_mobile_admin/models/response/message"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/admin"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/company_approval"
|
|
|
"hongze/hongze_mobile_admin/models/tables/company_approval_message"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/company_contract"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/company_delay_permission"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/company_product"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/company_product_log"
|
|
|
- "hongze/hongze_mobile_admin/models/tables/company_report_permission"
|
|
|
- "hongze/hongze_mobile_admin/services"
|
|
|
"hongze/hongze_mobile_admin/utils"
|
|
|
"rdluck_tools/paging"
|
|
|
- "strconv"
|
|
|
- "time"
|
|
|
)
|
|
|
|
|
|
//消息模块
|
|
@@ -119,7 +107,7 @@ func (this *MessageCommon) MessageList() {
|
|
|
// @Description 消息已读接口
|
|
|
// @Param request body company.CompanyApprovalMessageReadReq true "type json string"
|
|
|
// @Success Ret=200 申请成功
|
|
|
-// @router /message/read [post]
|
|
|
+// @router /read [post]
|
|
|
func (this *MessageCommon) MessageRead() {
|
|
|
//sysUser := this.AdminWx
|
|
|
var req company_approval_message.CompanyApprovalMessageReadReq
|
|
@@ -140,479 +128,3 @@ func (this *MessageCommon) MessageRead() {
|
|
|
}
|
|
|
this.OkWithMessage("已读成功")
|
|
|
}
|
|
|
-
|
|
|
-// @Title 获取审批列表接口
|
|
|
-// @Description 获取审批列表接口
|
|
|
-// @Param PageSize query int true "每页数据条数"
|
|
|
-// @Param CurrentIndex query int true "当前页页码,从1开始"
|
|
|
-// @Param Status query string true "状态:'全部','待审批','已审批','驳回','已撤回'"
|
|
|
-// @Param KeyWord query string true "搜索关键词"
|
|
|
-// @Success 200 {object} approval.CompanyApprovalListResp
|
|
|
-// @router /list [get]
|
|
|
-func (this *MessageCommon) List() {
|
|
|
- sysUser := this.AdminWx
|
|
|
- roleTypeCode := sysUser.RoleTypeCode
|
|
|
-
|
|
|
- pageSize, _ := this.GetInt("PageSize")
|
|
|
- currentIndex, _ := this.GetInt("CurrentIndex")
|
|
|
- status := this.GetString("Status")
|
|
|
- keyWord := this.GetString("KeyWord")
|
|
|
-
|
|
|
- var startSize int
|
|
|
- if pageSize <= 0 {
|
|
|
- pageSize = utils.PageSize20
|
|
|
- }
|
|
|
- if currentIndex <= 0 {
|
|
|
- currentIndex = 1
|
|
|
- }
|
|
|
- startSize = paging.StartIndex(currentIndex, pageSize)
|
|
|
-
|
|
|
- var condition string
|
|
|
- var pars []interface{}
|
|
|
-
|
|
|
- if status != "" {
|
|
|
- if status == "已审批" {
|
|
|
- condition += ` AND c.approve_status IN('已审批','驳回') `
|
|
|
- } else {
|
|
|
- condition += ` AND c.approve_status=? `
|
|
|
- pars = append(pars, status)
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_ADMIN || roleTypeCode == utils.ROLE_TYPE_CODE_RAI_ADMIN { //审批
|
|
|
- condition += ` AND c.approve_role_type_code=? `
|
|
|
- pars = append(pars, roleTypeCode)
|
|
|
- } else if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_SELLER || roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER { //销售
|
|
|
- condition += ` AND c.apply_user_id=? `
|
|
|
- pars = append(pars, sysUser.AdminId)
|
|
|
- }
|
|
|
-
|
|
|
- if keyWord != "" {
|
|
|
- condition += ` AND (a.company_name LIKE '%` + keyWord + `%' OR a.credit_code LIKE '%` + keyWord + `%') `
|
|
|
- }
|
|
|
-
|
|
|
- total, err := company_approval.GetApprovalCount(condition, pars)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取失败", "获取数据总数失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- list, err := company_approval.GetApprovalList(condition, pars, startSize, pageSize)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取失败", "获取数据失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- listLen := len(list)
|
|
|
- for i := 0; i < listLen; i++ {
|
|
|
- item := list[i]
|
|
|
- if item.FreezeStartDate != "" && item.FreezeEndDate != "" && item.Status == utils.COMPANY_STATUS_FREEZE {
|
|
|
- freezeEndDate, _ := time.Parse(utils.FormatDate, item.FreezeEndDate)
|
|
|
- if time.Now().Before(freezeEndDate) {
|
|
|
- expireDays := freezeEndDate.Sub(time.Now()).Hours() / 24
|
|
|
- list[i].FreezeExpireDays = int(expireDays)
|
|
|
- }
|
|
|
- }
|
|
|
- if item.StartDate != "" && item.EndDate != "" {
|
|
|
- endDate, _ := time.Parse(utils.FormatDate, item.EndDate)
|
|
|
- if time.Now().Before(endDate) {
|
|
|
- expireDays := endDate.Sub(time.Now()).Hours() / 24
|
|
|
- list[i].ExpireDay = int(expireDays)
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- approvalCount, err := company_approval.GetCompanyApprovalCount(item.CompanyId, item.ProductId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- this.FailWithMessage("获取失败", "获取延期审批次数失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- list[i].ApprovalCount = approvalCount
|
|
|
-
|
|
|
- if item.ApplyMethod == 3 {
|
|
|
- delayPermission, err := company_delay_permission.GetApplyDelayPermission(item.CompanyApprovalId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- this.FailWithMessage("获取失败", "获取延期审批权限失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- list[i].DelayPermission = delayPermission
|
|
|
- }
|
|
|
- if item.ApproveRoleTypeCode == roleTypeCode {
|
|
|
- list[i].OpButton = true
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- page := paging.GetPaging(currentIndex, pageSize, total)
|
|
|
- resp := approval.CompanyApprovalListResp{
|
|
|
- Paging: page,
|
|
|
- List: list,
|
|
|
- }
|
|
|
- this.OkDetailed(resp, "获取成功")
|
|
|
-}
|
|
|
-
|
|
|
-// @Title 获取审批单详情接口
|
|
|
-// @Description 获取审批单详情接口
|
|
|
-// @Param ApprovalId query int true "审批单id"
|
|
|
-// @Success 200 {object} approval.CompanyApprovalDetailResp
|
|
|
-// @router /detail [get]
|
|
|
-func (this *MessageCommon) Detail() {
|
|
|
- sysUser := this.AdminWx
|
|
|
- roleTypeCode := sysUser.RoleTypeCode
|
|
|
-
|
|
|
- companyApprovalId, _ := this.GetInt("ApprovalId")
|
|
|
- var condition string
|
|
|
- var pars []interface{}
|
|
|
-
|
|
|
- if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_ADMIN || roleTypeCode == utils.ROLE_TYPE_CODE_RAI_ADMIN { //审批
|
|
|
- condition += ` AND c.approve_role_type_code=? `
|
|
|
- pars = append(pars, roleTypeCode)
|
|
|
- } else if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_SELLER || roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER { //销售
|
|
|
- condition += ` AND c.apply_user_id=? `
|
|
|
- pars = append(pars, sysUser.AdminId)
|
|
|
- }
|
|
|
-
|
|
|
- item, err := company_approval.GetApprovalListByApprovalId(condition, pars, companyApprovalId)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取失败", "获取数据失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- if item.FreezeStartDate != "" && item.FreezeEndDate != "" && item.Status == utils.COMPANY_STATUS_FREEZE {
|
|
|
- freezeEndDate, _ := time.Parse(utils.FormatDate, item.FreezeEndDate)
|
|
|
- if time.Now().Before(freezeEndDate) {
|
|
|
- expireDays := freezeEndDate.Sub(time.Now()).Hours() / 24
|
|
|
- item.FreezeExpireDays = int(expireDays)
|
|
|
- }
|
|
|
- }
|
|
|
- if item.StartDate != "" && item.EndDate != "" {
|
|
|
- endDate, _ := time.Parse(utils.FormatDate, item.EndDate)
|
|
|
- if time.Now().Before(endDate) {
|
|
|
- expireDays := endDate.Sub(time.Now()).Hours() / 24
|
|
|
- item.ExpireDay = int(expireDays)
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- approvalCount, err := company_approval.GetCompanyApprovalCount(item.CompanyId, item.ProductId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- this.FailWithMessage("获取失败", "获取延期审批次数失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- item.ApprovalCount = approvalCount
|
|
|
-
|
|
|
- //if item.ApplyMethod == 3 {
|
|
|
- // delayPermission, err := company_delay_permission.GetApplyDelayPermission(item.CompanyApprovalId)
|
|
|
- // if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- // this.FailWithMessage("获取失败", "获取延期审批权限失败,Err:"+err.Error())
|
|
|
- // return
|
|
|
- // }
|
|
|
- // item.DelayPermission = delayPermission
|
|
|
- //}
|
|
|
-
|
|
|
- resp := approval.CompanyApprovalDetailResp{
|
|
|
- CompanyApprovalDetail: item,
|
|
|
- }
|
|
|
-
|
|
|
- //获取权限列表
|
|
|
-
|
|
|
- //子权限切片集合
|
|
|
- var permissionClassifyArr []string
|
|
|
- if item.ProductId == 1 {
|
|
|
- for _, v := range utils.PermissionFiccClassifyArr {
|
|
|
- permissionClassifyArr = append(permissionClassifyArr, v)
|
|
|
- }
|
|
|
- } else {
|
|
|
- permissionClassifyArr = append(permissionClassifyArr, "权益")
|
|
|
- }
|
|
|
-
|
|
|
- //获取需要审批的权限
|
|
|
- delayPermissionList, err := company_delay_permission.GetDelayPermissionItems(item.CompanyId, item.CompanyApprovalId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- this.FailWithMessage("获取失败", "获取审批权限失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- delayPermissionIdMap := make(map[int]int)
|
|
|
- for _, delayPermission := range delayPermissionList {
|
|
|
- delayPermissionIdMap[delayPermission.ChartPermissionId] = 0
|
|
|
- }
|
|
|
-
|
|
|
- //遍历获取
|
|
|
- for _, v := range permissionClassifyArr {
|
|
|
- checkList := make([]int, 0)
|
|
|
- plist := new(company_report_permission.PermissionLookList)
|
|
|
- items, err := company_report_permission.GetPermissionLookItems(item.ProductId, v)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取失败", "获取权限信息失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- for _, n := range items {
|
|
|
- if _, ok := delayPermissionIdMap[n.ChartPermissionId]; ok {
|
|
|
- checkList = append(checkList, n.ChartPermissionId)
|
|
|
- }
|
|
|
- }
|
|
|
- plist.Items = items
|
|
|
- plist.ClassifyName = v
|
|
|
- plist.CheckList = checkList
|
|
|
-
|
|
|
- if item.ProductId == 1 {
|
|
|
- resp.FiccPermissionList = append(resp.FiccPermissionList, plist)
|
|
|
- } else {
|
|
|
- resp.PermissionList = append(resp.PermissionList, plist)
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- this.OkDetailed(resp, "获取成功")
|
|
|
-}
|
|
|
-
|
|
|
-// @Title 获取审批单中的权限列表
|
|
|
-// @Description 获取审批单中的权限列表接口
|
|
|
-// @Param ApprovalId query int true "审批单id"
|
|
|
-// @Success 200 {object} approval.CompanyPermissionResp
|
|
|
-// @router /getApprovalPermissionList [get]
|
|
|
-func (this *MessageCommon) GetApprovalPermissionList() {
|
|
|
- //this.FailWithMessage("获取失败", "获取数据总数失败,Err:"+err.Error())
|
|
|
- //返回基础参数
|
|
|
- resp := new(approval.CompanyPermissionResp)
|
|
|
-
|
|
|
- //获取审批单信息
|
|
|
- approvalId, _ := this.GetInt("ApprovalId")
|
|
|
- if approvalId <= 0 {
|
|
|
- this.FailWithMessage("审批单参数异常", "提交审批单参数异常")
|
|
|
- return
|
|
|
- }
|
|
|
- approvalInfo, err := company_approval.GetCompanyApprovalByApprovalId(approvalId)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取失败", "获取审批单数据失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- //子权限切片集合
|
|
|
- var permissionClassifyArr []string
|
|
|
- if approvalInfo.ProductId == 1 {
|
|
|
- for _, v := range utils.PermissionFiccClassifyArr {
|
|
|
- permissionClassifyArr = append(permissionClassifyArr, v)
|
|
|
- }
|
|
|
- } else {
|
|
|
- permissionClassifyArr = append(permissionClassifyArr, "权益")
|
|
|
- }
|
|
|
-
|
|
|
- //获取需要审批的权限
|
|
|
- delayPermissionList, err := company_delay_permission.GetDelayPermissionItems(approvalInfo.CompanyId, approvalInfo.CompanyApprovalId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- this.FailWithMessage("获取失败", "获取审批权限失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- delayPermissionIdMap := make(map[int]int)
|
|
|
- for _, delayPermission := range delayPermissionList {
|
|
|
- delayPermissionIdMap[delayPermission.ChartPermissionId] = 0
|
|
|
- }
|
|
|
-
|
|
|
- //遍历获取
|
|
|
- for _, v := range permissionClassifyArr {
|
|
|
- checkList := make([]int, 0)
|
|
|
- plist := new(company_report_permission.PermissionLookList)
|
|
|
- items, err := company_report_permission.GetPermissionLookItems(approvalInfo.ProductId, v)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取失败", "获取权限信息失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- for _, n := range items {
|
|
|
- if _, ok := delayPermissionIdMap[n.ChartPermissionId]; ok {
|
|
|
- checkList = append(checkList, n.ChartPermissionId)
|
|
|
- }
|
|
|
- }
|
|
|
- plist.Items = items
|
|
|
- plist.ClassifyName = v
|
|
|
- plist.CheckList = checkList
|
|
|
-
|
|
|
- if approvalInfo.ProductId == 1 {
|
|
|
- resp.FiccPermissionList = append(resp.FiccPermissionList, plist)
|
|
|
- } else {
|
|
|
- resp.PermissionList = append(resp.PermissionList, plist)
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- this.OkDetailed(resp, "获取成功")
|
|
|
-}
|
|
|
-
|
|
|
-// @Title 审批
|
|
|
-// @Description 审批接口
|
|
|
-// @Param request body approval.CompanyApplyApproveReq true "type json string"
|
|
|
-// @Success Ret=200 审批成功
|
|
|
-// @router /approve [post]
|
|
|
-func (this *MessageCommon) ApplyApprove() {
|
|
|
- sysUser := this.AdminWx
|
|
|
- var req approval2.CompanyApplyApproveReq
|
|
|
- err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("参数解析异常!", "参数解析失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- roleTypeCode := sysUser.RoleTypeCode
|
|
|
- productId := services.GetProductId(roleTypeCode)
|
|
|
- if productId == 0 {
|
|
|
- this.FailWithMessage("参数错误", "参数解析失败,Err:"+"客户类型为:"+roleTypeCode)
|
|
|
- return
|
|
|
- }
|
|
|
- if req.CompanyId <= 0 {
|
|
|
- this.FailWithMessage("参数错误", "客户Id小于等于0")
|
|
|
- return
|
|
|
- }
|
|
|
- if req.Status != 1 && req.Status != 2 {
|
|
|
- this.FailWithMessage("参数错误", "审批状态Id小于等于0")
|
|
|
- return
|
|
|
- }
|
|
|
- companyProduct, err := company_product.GetCompanyProductByCompanyIdAndProductId(req.CompanyId, productId)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("获取信息失败", "获取信息失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- if companyProduct == nil {
|
|
|
- this.FailWithMessage("获取审批信息失败", "获取信息失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- approvalItem, err := company_approval.GetCompanyApprovalByCompanyId(req.CompanyId, productId)
|
|
|
- if err != nil {
|
|
|
- if err.Error() == utils.ErrNoRow() {
|
|
|
- this.FailWithMessage("订单已审批,请刷新页面查看最新状态", "待审批信息不存在,CompanyId:"+strconv.Itoa(req.CompanyId)+";productId:"+strconv.Itoa(productId))
|
|
|
- } else {
|
|
|
- this.FailWithMessage("获取信息失败", "获取信息失败,Err:"+err.Error())
|
|
|
- }
|
|
|
- return
|
|
|
- }
|
|
|
- if approvalItem == nil {
|
|
|
- this.FailWithMessage("订单已审批,请刷新页面查看最新状态", "待审批信息不存在,CompanyId:"+strconv.Itoa(req.CompanyId)+";productId:"+strconv.Itoa(productId))
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- if approvalItem.ApproveRoleTypeCode != roleTypeCode {
|
|
|
- this.FailWithMessage("您无权审批", "ApproveRoleTypeCode:"+approvalItem.ApproveRoleTypeCode+";roleTypeCode:"+roleTypeCode)
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- var approveStatus, approveContent string
|
|
|
-
|
|
|
- if req.Status == 1 { //通过
|
|
|
- //申请类型:1:试用->正式,2:冻结—>试用,3:试用延期,4:原销售申请领取流失客户,5:正式客户申请服务更新
|
|
|
- if approvalItem.ApplyMethod == 1 { //试用转正式
|
|
|
- //获取合同信息
|
|
|
- contract, err := company_contract.GetCompanyContractDetail(req.CompanyId, productId, req.CompanyContractId)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("待审批信息不存在", "待审批信息不存在,CompanyId:"+strconv.Itoa(req.CompanyId)+";productId:"+strconv.Itoa(productId)+";Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- if contract == nil {
|
|
|
- this.FailWithMessage("待审批信息不存在", "待审批信息不存在,CompanyId:"+strconv.Itoa(req.CompanyId)+";productId:"+strconv.Itoa(productId))
|
|
|
- return
|
|
|
- }
|
|
|
- err = company_approval.TryOutToFormal(req.CompanyId, productId, sysUser.AdminId, approvalItem.CompanyApprovalId, contract.CompanyContractId, contract.StartDate, contract.EndDate, sysUser.RealName, companyProduct.ProductName)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- } else if approvalItem.ApplyMethod == 2 { //冻结->试用
|
|
|
- err = company_approval.FreezeToTryOut(req.CompanyId, productId, sysUser.AdminId, approvalItem.CompanyApprovalId, approvalItem.ApplyUserId, sysUser.RealName, companyProduct.ProductName)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- } else if approvalItem.ApplyMethod == 3 { //试用延期
|
|
|
- err = company_approval.TryOutDelay(req.CompanyId, productId, sysUser.AdminId, approvalItem.CompanyApprovalId, sysUser.RealName, companyProduct.EndDate, companyProduct.ProductName)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- } else if approvalItem.ApplyMethod == 4 { //原销售申请领取流失客户
|
|
|
- err = company_approval.ApplyReceive(req.CompanyId, productId, sysUser.AdminId, approvalItem.CompanyApprovalId, approvalItem.ApplyUserId, sysUser.RealName, companyProduct.ProductName)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- } else if approvalItem.ApplyMethod == 5 { //正式客户申请服务更新
|
|
|
- //获取合同信息
|
|
|
- contract, err := company_contract.GetCompanyContractDetail(req.CompanyId, productId, req.CompanyContractId)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- if contract == nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- err = company_approval.ApplyServiceUpdate(req.CompanyId, productId, sysUser.AdminId, approvalItem.CompanyApprovalId, contract.CompanyContractId, companyProduct.StartDate, contract.EndDate, sysUser.RealName, companyProduct.ProductName)
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- } else {
|
|
|
- this.FailWithMessage("审批失败", "无效的审批状态,CompanyId:"+strconv.Itoa(req.CompanyId)+";productId:"+
|
|
|
- strconv.Itoa(productId)+";ApplyMethod:"+strconv.Itoa(approvalItem.ApplyMethod)+" ApproveStatus;"+approvalItem.ApproveStatus)
|
|
|
- return
|
|
|
- }
|
|
|
- approveContent = "审批通过"
|
|
|
- } else { //拒绝
|
|
|
- if req.Remark == "" {
|
|
|
- this.FailWithMessage("请填写驳回理由", "请填写驳回理由")
|
|
|
- return
|
|
|
- }
|
|
|
- approveStatus = "驳回"
|
|
|
- err = company_approval.ApproveRefuse(req.CompanyId, productId, approveStatus, req.Remark)
|
|
|
- approveContent = "审批驳回"
|
|
|
- if err != nil {
|
|
|
- this.FailWithMessage("审批失败", "审批失败,Err:"+err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //新增客户产品日志
|
|
|
- {
|
|
|
- productLog := new(company_product_log.CompanyProductLog)
|
|
|
- productLog.CompanyProductId = companyProduct.CompanyProductId
|
|
|
- productLog.CompanyId = companyProduct.CompanyId
|
|
|
- productLog.ProductId = companyProduct.ProductId
|
|
|
- productLog.ProductName = companyProduct.ProductName
|
|
|
- productLog.CompanyName = companyProduct.CompanyName
|
|
|
- productLog.CompanyName = companyProduct.CompanyName
|
|
|
- productLog.Source = companyProduct.Source
|
|
|
- productLog.Reasons = companyProduct.Reasons
|
|
|
- productLog.Status = companyProduct.Status
|
|
|
- productLog.IndustryId = companyProduct.IndustryId
|
|
|
- productLog.IndustryName = companyProduct.IndustryName
|
|
|
- productLog.SellerId = companyProduct.SellerId
|
|
|
- productLog.SellerName = companyProduct.SellerName
|
|
|
- productLog.GroupId = companyProduct.GroupId
|
|
|
- productLog.DepartmentId = companyProduct.DepartmentId
|
|
|
- productLog.IsSuspend = companyProduct.IsSuspend
|
|
|
- productLog.SuspendTime = companyProduct.SuspendTime
|
|
|
- productLog.ApproveStatus = companyProduct.ApproveStatus
|
|
|
- productLog.FreezeTime = companyProduct.FreezeTime
|
|
|
- productLog.Remark = companyProduct.Remark
|
|
|
- productLog.StartDate = companyProduct.StartDate
|
|
|
- productLog.EndDate = companyProduct.EndDate
|
|
|
- productLog.CreateTime = companyProduct.CreateTime
|
|
|
- productLog.ModifyTime = companyProduct.ModifyTime
|
|
|
- productLog.LoseReason = companyProduct.LoseReason
|
|
|
- productLog.LossTime = companyProduct.LossTime
|
|
|
- productLog.LogType = "modify"
|
|
|
- productLog.LogCreateTime = time.Now()
|
|
|
- productLog.AdminId = this.AdminWx.AdminId
|
|
|
- go company_product_log.AddCompanyProductLog(productLog)
|
|
|
- }
|
|
|
- //新增操作记录
|
|
|
- {
|
|
|
- remark := "审批"
|
|
|
- operation := "approve"
|
|
|
- services.AddCompanyOperationRecord(req.CompanyId, companyProduct.SellerId, sysUser.AdminId, productId, sysUser.AdminId, companyProduct.CompanyName,
|
|
|
- companyProduct.ProductName, sysUser.RealName, remark, operation, approveContent, sysUser.RealName, req.Remark, companyProduct.Status)
|
|
|
- }
|
|
|
- //待办通知
|
|
|
- {
|
|
|
- content := companyProduct.CompanyName + " " + approvalItem.ApproveContent + approveContent
|
|
|
- approvalSysUser, _ := admin.GetAdminById(approvalItem.ApplyUserId)
|
|
|
- if sysUser != nil {
|
|
|
- go services.AddCompanyApprovalMessage(sysUser.AdminId, approvalItem.ApplyUserId, req.CompanyId, approvalItem.CompanyApprovalId, 2, companyProduct.CompanyName, content, content, approvalSysUser.Mobile)
|
|
|
- }
|
|
|
- }
|
|
|
- this.OkWithMessage("审批操作成功")
|
|
|
-}
|