diff --git a/conf/app.go b/conf/app.go index 9e6d53a..0eb96f1 100644 --- a/conf/app.go +++ b/conf/app.go @@ -8,9 +8,9 @@ import ( rcover "github.com/kataras/iris/v12/middleware/recover" ) -var ExampleFile = "http://localhost:9003/public/uploadxlsx/example.xlsx" +var ExampleFile = "http://localhost:9004/public/uploadxlsx/example.xlsx" -var Baseurl = "http://localhost:9003" +var Baseurl = "http://localhost:9004" type AppConf struct { DisablePathCorrection bool diff --git a/conf/config.yaml b/conf/config.yaml index 165f5eb..420bdda 100644 --- a/conf/config.yaml +++ b/conf/config.yaml @@ -11,7 +11,7 @@ masterdbdrivername: mssql masterdbserver: 101.201.121.115 masterdbuser: sa masterdbpassword: Leit2020 -masterdbname: MDS_MOM +masterdbname: LAPP_PM masterdbport: 1433 # 打印模板文件夹路径 diff --git a/main.go b/main.go index 3c627a2..ebf3cd0 100644 --- a/main.go +++ b/main.go @@ -123,6 +123,6 @@ func imain() { //启动监听端口 - app.Run(iris.Addr(":9003"), iris.WithConfiguration(conf.C)) + app.Run(iris.Addr(":9004"), iris.WithConfiguration(conf.C)) } diff --git a/models/pj/Project.model.go b/models/pj/Project.model.go index b74c368..cb12030 100644 --- a/models/pj/Project.model.go +++ b/models/pj/Project.model.go @@ -46,6 +46,8 @@ type Project struct { LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"PJ_Project-LastModify"` LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"PJ_Project-LastUser"` CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"PJ_Project-CreateTime"` + PaymentPhases []ProjectPaymentPhaseLst `json:"PJ_Project-PaymentPhases" xorm:"-"` + Phases []ProjectPhaseLst `json:"PJ_Project-Phases" xorm:"-"` } /****************************************************************************** diff --git a/models/pj/ProjectPhaseLst.model.go b/models/pj/ProjectPhaseLst.model.go index 57ee0a7..c0b9817 100644 --- a/models/pj/ProjectPhaseLst.model.go +++ b/models/pj/ProjectPhaseLst.model.go @@ -40,6 +40,8 @@ type ProjectPhaseLst struct { LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"PJ_ProjectPhaseLst-LastModify"` LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"PJ_ProjectPhaseLst-LastUser"` CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"PJ_ProjectPhaseLst-CreateTime"` + Resources []ProjectPhaseResourceLst `json:"PJ_ProjectPhaseLst-Resources" xorm:"-"` + Expenses []ProjectPhaseExpenseLst `json:"PJ_ProjectPhaseLst-Expenses" xorm:"-"` } /****************************************************************************** diff --git a/services/pj/Project.service.go b/services/pj/Project.service.go index 2f8188a..15a4ced 100644 --- a/services/pj/Project.service.go +++ b/services/pj/Project.service.go @@ -195,6 +195,25 @@ type ProjectService interface { * ******************************************************************************/ Update(*global.User, *[]model.Project) error + /****************************************************************************** + * + * @Function Name : Close + *----------------------------------------------------------------------------- + * + * @Description : 修改Project + * + * @Function Parameters : 当前访问人员信息 + * + * @Function Parameters : 需要修改的Project + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ + Close(*global.User, string) error } /****************************************************************************** diff --git a/services/pj/ProjectPhaseLst.service.go b/services/pj/ProjectPhaseLst.service.go index 22ea87e..bb6bf93 100644 --- a/services/pj/ProjectPhaseLst.service.go +++ b/services/pj/ProjectPhaseLst.service.go @@ -199,6 +199,46 @@ type ProjectPhaseLstService interface { * ******************************************************************************/ Update(*global.User, *[]model.ProjectPhaseLst) error + + /****************************************************************************** + * + * @Function Name : PreadJust + *----------------------------------------------------------------------------- + * + * @Description : 修改ProjectPhaseLst + * + * @Function Parameters : 当前访问人员信息 + * + * @Function Parameters : 需要修改的ProjectPhaseLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ + PreadJust(*global.User, string, string) error + + /****************************************************************************** + * + * @Function Name : Close + *----------------------------------------------------------------------------- + * + * @Description : 修改ProjectPhaseLst + * + * @Function Parameters : 当前访问人员信息 + * + * @Function Parameters : 需要修改的ProjectPhaseLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ + Close(*global.User, string, string) error } /****************************************************************************** diff --git a/services/pj/Resource.service.go b/services/pj/Resource.service.go index fa9b53d..71dbf66 100644 --- a/services/pj/Resource.service.go +++ b/services/pj/Resource.service.go @@ -195,6 +195,45 @@ type ResourceService interface { * ******************************************************************************/ Update(*global.User, *[]model.Resource) error + /****************************************************************************** + * + * @Function Name : Enable + *----------------------------------------------------------------------------- + * + * @Description : 启动Resource + * + * @Function Parameters : 当前访问人员信息 + * + * @Function Parameters : esource + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ + Enable(*global.User, string) error + + /****************************************************************************** + * + * @Function Name : Disable + *----------------------------------------------------------------------------- + * + * @Description : 启动Resource + * + * @Function Parameters : 当前访问人员信息 + * + * @Function Parameters : esource + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ + Disable(*global.User, string) error } /****************************************************************************** diff --git a/services/pj/implments/Project.service.impl.go b/services/pj/implments/Project.service.impl.go index 4646e6d..0c222fc 100644 --- a/services/pj/implments/Project.service.impl.go +++ b/services/pj/implments/Project.service.impl.go @@ -170,6 +170,42 @@ func (impl *ProjectServiceImplement) SelectOne(user *global.User, projectId stri if err != nil { return nil, err } + + paymentphase_dao := dal.NewProjectPaymentPhaseLstDAO(session, user.UserId) + paymentphase_predicate := []grmi.Predicate{meta.ProjectPaymentPhaseLst_ProjectId.NewPredicate(grmi.Equal, result.ProjectId)} + paymentphase_data, err := paymentphase_dao.Select(paymentphase_predicate,nil) + if err != nil { + return nil, err + } + result.PaymentPhases = paymentphase_data + + phaselst_dao := dal.NewProjectPhaseLstDAO(session, user.UserId) + phaselst_predicate := []grmi.Predicate{meta.ProjectPhaseLst_ProjectId.NewPredicate(grmi.Equal, result.ProjectId)} + phaselst_data, err := phaselst_dao.Select(phaselst_predicate,nil) + if err != nil { + return nil, err + } + + phaseResouce_dao := dal.NewProjectPhaseResourceLstDAO(session, user.UserId) + phaseExpense_dao := dal.NewProjectPhaseExpenseLstDAO(session, user.UserId) + for index, phaseInfo := range phaselst_data{ + phaseResouce_predicate := []grmi.Predicate{meta.ProjectPhaseResourceLst_ProjectId.NewPredicate(grmi.Equal, phaseInfo.ProjectId),meta.ProjectPhaseResourceLst_PhaseId.NewPredicate(grmi.Equal, phaseInfo.PhaseId)} + phaseResouce_data, err := phaseResouce_dao.Select(phaseResouce_predicate,nil) + if err != nil { + return nil, err + } + phaselst_data[index].Resources = phaseResouce_data + + phaseExpense_predicate := []grmi.Predicate{meta.ProjectPhaseExpenseLst_ProjectId.NewPredicate(grmi.Equal, phaseInfo.ProjectId),meta.ProjectPhaseExpenseLst_PhaseId.NewPredicate(grmi.Equal, phaseInfo.PhaseId)} + phaseExpense_data, err := phaseExpense_dao.Select(phaseExpense_predicate,nil) + if err != nil { + return nil, err + } + phaselst_data[index].Expenses = phaseExpense_data + } + + result.Phases = phaselst_data + return result, nil } @@ -343,3 +379,31 @@ func (impl *ProjectServiceImplement) Update(user *global.User, entities *[]model } return nil } + +/****************************************************************************** + * + * @Reference LEIT_PM/services/pj/ProjectService.Close + * + ******************************************************************************/ +func (impl *ProjectServiceImplement) Close(user *global.User, ProjectId string) error { + + grmi.Log(user, "/services/pj/implments/Project.service.impl.go", "UpdateOneProject", "修改一个Project") + + engine := db.Eloquent.Master() + session := engine.NewSession() + defer session.Close() + dao := dal.NewProjectDAO(session, user.UserId) + record, err := dao.SelectOne(ProjectId) + if err != nil { + return err + } + if record == nil { + return grmi.NewBusinessError("不存在指定记录!") + } + record.Status = 2 + err = dao.UpdateOne(record) + if err != nil { + return err + } + return nil +} diff --git a/services/pj/implments/ProjectPhaseLst.service.impl.go b/services/pj/implments/ProjectPhaseLst.service.impl.go index a663de6..a2180a6 100644 --- a/services/pj/implments/ProjectPhaseLst.service.impl.go +++ b/services/pj/implments/ProjectPhaseLst.service.impl.go @@ -337,3 +337,157 @@ func (impl *ProjectPhaseLstServiceImplement) Update(user *global.User, entities } return nil } + +/****************************************************************************** + * + * @Reference LEIT_PM/services/pj/ProjectPhaseLstService.PreadJust + * + ******************************************************************************/ +func (impl *ProjectPhaseLstServiceImplement) PreadJust(user *global.User, projectId string, phaseId string) error { + + grmi.Log(user, "/services/pj/implments/ProjectPhaseLst.service.impl.go", "PreadJustProjectPhaseLst", "修改ProjectPhaseLst") + + engine := db.Eloquent.Master() + session := engine.NewSession() + defer session.Close() + + project_dao := dal.NewProjectDAO(session, user.UserId) + result, err := project_dao.SelectOne(projectId) + if err != nil { + return err + } + + paymentphase_dao := dal.NewProjectPaymentPhaseLstDAO(session, user.UserId) + paymentphase_predicate := []grmi.Predicate{meta.ProjectPaymentPhaseLst_ProjectId.NewPredicate(grmi.Equal, result.ProjectId)} + paymentphase_data, err := paymentphase_dao.Select(paymentphase_predicate,nil) + if err != nil { + return err + } + result.PaymentPhases = paymentphase_data + + phaselst_dao := dal.NewProjectPhaseLstDAO(session, user.UserId) + phaselst_predicate := []grmi.Predicate{meta.ProjectPhaseLst_ProjectId.NewPredicate(grmi.Equal, result.ProjectId)} + phaselst_data, err := phaselst_dao.Select(phaselst_predicate,nil) + if err != nil { + return err + } + + phaseResouce_dao := dal.NewProjectPhaseResourceLstDAO(session, user.UserId) + phaseExpense_dao := dal.NewProjectPhaseExpenseLstDAO(session, user.UserId) + for index, phaseInfo := range phaselst_data{ + phaseResouce_predicate := []grmi.Predicate{meta.ProjectPhaseResourceLst_ProjectId.NewPredicate(grmi.Equal, phaseInfo.ProjectId),meta.ProjectPhaseResourceLst_PhaseId.NewPredicate(grmi.Equal, phaseInfo.PhaseId)} + phaseResouce_data, err := phaseResouce_dao.Select(phaseResouce_predicate,nil) + if err != nil { + return err + } + phaselst_data[index].Resources = phaseResouce_data + + phaseExpense_predicate := []grmi.Predicate{meta.ProjectPhaseExpenseLst_ProjectId.NewPredicate(grmi.Equal, phaseInfo.ProjectId),meta.ProjectPhaseExpenseLst_PhaseId.NewPredicate(grmi.Equal, phaseInfo.PhaseId)} + phaseExpense_data, err := phaseExpense_dao.Select(phaseExpense_predicate,nil) + if err != nil { + return err + } + phaselst_data[index].Expenses = phaseExpense_data + } + + result.Phases = phaselst_data + + var ActualCost,DayCost float64 + for index, _ := range result.Phases{ + for ResourceIndex, _ := range result.Phases[index].Resources{ + result.Phases[index].Resources[ResourceIndex].ActualCost = result.Phases[index].Resources[ResourceIndex].ActualMandays*result.Phases[index].Resources[ResourceIndex].MandayRate + DayCost += result.Phases[index].Resources[ResourceIndex].ActualCost + err = phaseResouce_dao.UpdateOne(&result.Phases[index].Resources[ResourceIndex]) + if err != nil { + return err + } + } + for ExpensesIndex, _ := range result.Phases[index].Expenses{ + ActualCost += result.Phases[index].Expenses[ExpensesIndex].ActualExpense + } + } + result.ActualCost = ActualCost + DayCost + + err = project_dao.UpdateOne(result) + if err != nil { + return err + } + return nil +} + +/****************************************************************************** + * + * @Reference LEIT_PM/services/pj/ProjectPhaseLstService.Close + * + ******************************************************************************/ +func (impl *ProjectPhaseLstServiceImplement) Close(user *global.User, projectId string, phaseId string) error { + + grmi.Log(user, "/services/pj/implments/ProjectPhaseLst.service.impl.go", "CloseProjectPhaseLst", "修改ProjectPhaseLst") + + engine := db.Eloquent.Master() + session := engine.NewSession() + defer session.Close() + project_dao := dal.NewProjectDAO(session, user.UserId) + result, err := project_dao.SelectOne(projectId) + if err != nil { + return err + } + + paymentphase_dao := dal.NewProjectPaymentPhaseLstDAO(session, user.UserId) + paymentphase_predicate := []grmi.Predicate{meta.ProjectPaymentPhaseLst_ProjectId.NewPredicate(grmi.Equal, result.ProjectId)} + paymentphase_data, err := paymentphase_dao.Select(paymentphase_predicate,nil) + if err != nil { + return err + } + result.PaymentPhases = paymentphase_data + + phaselst_dao := dal.NewProjectPhaseLstDAO(session, user.UserId) + phaselst_predicate := []grmi.Predicate{meta.ProjectPhaseLst_ProjectId.NewPredicate(grmi.Equal, result.ProjectId)} + phaselst_data, err := phaselst_dao.Select(phaselst_predicate,nil) + if err != nil { + return err + } + + phaseResouce_dao := dal.NewProjectPhaseResourceLstDAO(session, user.UserId) + phaseExpense_dao := dal.NewProjectPhaseExpenseLstDAO(session, user.UserId) + for index, phaseInfo := range phaselst_data{ + phaseResouce_predicate := []grmi.Predicate{meta.ProjectPhaseResourceLst_ProjectId.NewPredicate(grmi.Equal, phaseInfo.ProjectId),meta.ProjectPhaseResourceLst_PhaseId.NewPredicate(grmi.Equal, phaseInfo.PhaseId)} + phaseResouce_data, err := phaseResouce_dao.Select(phaseResouce_predicate,nil) + if err != nil { + return err + } + phaselst_data[index].Resources = phaseResouce_data + + phaseExpense_predicate := []grmi.Predicate{meta.ProjectPhaseExpenseLst_ProjectId.NewPredicate(grmi.Equal, phaseInfo.ProjectId),meta.ProjectPhaseExpenseLst_PhaseId.NewPredicate(grmi.Equal, phaseInfo.PhaseId)} + phaseExpense_data, err := phaseExpense_dao.Select(phaseExpense_predicate,nil) + if err != nil { + return err + } + phaselst_data[index].Expenses = phaseExpense_data + } + + result.Phases = phaselst_data + + var ActualCost,DayCost float64 + for index, _ := range result.Phases{ + for ResourceIndex, _ := range result.Phases[index].Resources{ + result.Phases[index].Resources[ResourceIndex].ActualCost = result.Phases[index].Resources[ResourceIndex].ActualMandays*result.Phases[index].Resources[ResourceIndex].MandayRate + DayCost += result.Phases[index].Resources[ResourceIndex].ActualCost + err = phaseResouce_dao.UpdateOne(&result.Phases[index].Resources[ResourceIndex]) + if err != nil { + return err + } + } + for ExpensesIndex, _ := range result.Phases[index].Expenses{ + ActualCost += result.Phases[index].Expenses[ExpensesIndex].ActualExpense + } + } + result.ActualCost = ActualCost + DayCost + result.Status = 2 + + err = project_dao.UpdateOne(result) + if err != nil { + return err + } + return nil +} diff --git a/services/pj/implments/Resource.service.impl.go b/services/pj/implments/Resource.service.impl.go index 238427a..9cae699 100644 --- a/services/pj/implments/Resource.service.impl.go +++ b/services/pj/implments/Resource.service.impl.go @@ -332,3 +332,58 @@ func (impl *ResourceServiceImplement) Update(user *global.User, entities *[]mode } return nil } + +/****************************************************************************** + * + * @Reference LEIT_PM/services/pj/ResourceService.Enable + * + ******************************************************************************/ +func (impl *ResourceServiceImplement) Enable(user *global.User, resourceId string) error { + + grmi.Log(user, "/services/pj/implments/Resource.service.impl.go", "EnableResource", "启动Resource") + + + engine := db.Eloquent.Master() + session := engine.NewSession() + defer session.Close() + dao := dal.NewResourceDAO(session, user.UserId) + result, err := dao.SelectOne(resourceId) + if err != nil { + return err + } + //启用资源 + result.Status = 1 + err = dao.UpdateOne(result) + if err != nil { + return err + } + return nil +} + +/****************************************************************************** + * + * @Reference LEIT_PM/services/pj/ResourceService.Disable + * + ******************************************************************************/ +func (impl *ResourceServiceImplement) Disable(user *global.User, resourceId string) error { + + grmi.Log(user, "/services/pj/implments/Resource.service.impl.go", "EnableResource", "启动Resource") + + + engine := db.Eloquent.Master() + session := engine.NewSession() + defer session.Close() + dao := dal.NewResourceDAO(session, user.UserId) + result, err := dao.SelectOne(resourceId) + if err != nil { + return err + } + //停用资源 + result.Status = 2 + err = dao.UpdateOne(result) + if err != nil { + return err + } + return nil +} + diff --git a/web/controllers/pj/Project.rest.go b/web/controllers/pj/Project.rest.go index 1efe8c8..1836234 100644 --- a/web/controllers/pj/Project.rest.go +++ b/web/controllers/pj/Project.rest.go @@ -399,3 +399,41 @@ func RegisterUpdateProject(party router.Party, path string, method func(*global. RegisterMultiProject(party, "PUT", path, method) } + +/****************************************************************************** + * + * @Function Name : RegisterSelectOneProject + *----------------------------------------------------------------------------- + * + * @Description : 为一个单条Project的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ +func RegisterCloseProject(party router.Party, path string, method func(*global.User, string) ( error)) { + + party.Post(path+"/{projectId:string}", func(ctx iris.Context) { + user, ok := jwts.ParseToken(ctx) + if !ok { + supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) + return + } + + projectId := ctx.Params().GetString("projectId") + err := method(user, projectId) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + + supports.Ok(ctx, supports.OptionSuccess, nil) + }) +} \ No newline at end of file diff --git a/web/controllers/pj/ProjectPhaseLst.rest.go b/web/controllers/pj/ProjectPhaseLst.rest.go index 9a9f1fd..85241df 100644 --- a/web/controllers/pj/ProjectPhaseLst.rest.go +++ b/web/controllers/pj/ProjectPhaseLst.rest.go @@ -401,3 +401,80 @@ func RegisterUpdateProjectPhaseLst(party router.Party, path string, method func( RegisterMultiProjectPhaseLst(party, "PUT", path, method) } + +/****************************************************************************** + * + * @Function Name : RegisterPreadJustProjectPhaseLst + *----------------------------------------------------------------------------- + * + * @Description : 为一个单条ProjectPhaseLst的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ +func RegisterPreadJustProjectPhaseLst(party router.Party, path string, method func(*global.User, string, string) (error)) { + + party.Post(path+"/{projectId:string}/{phaseId:string}", func(ctx iris.Context) { + user, ok := jwts.ParseToken(ctx) + if !ok { + supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) + return + } + + projectId := ctx.Params().GetString("projectId") + phaseId := ctx.Params().GetString("phaseId") + err := method(user, projectId, phaseId) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + + supports.Ok(ctx, supports.OptionSuccess, nil) + }) +} + +/****************************************************************************** + * + * @Function Name : RegisterCloseProjectPhaseLst + *----------------------------------------------------------------------------- + * + * @Description : 为一个单条ProjectPhaseLst的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ +func RegisterCloseProjectPhaseLst(party router.Party, path string, method func(*global.User, string, string) (error)) { + + party.Post(path+"/{projectId:string}/{phaseId:string}", func(ctx iris.Context) { + user, ok := jwts.ParseToken(ctx) + if !ok { + supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) + return + } + + projectId := ctx.Params().GetString("projectId") + phaseId := ctx.Params().GetString("phaseId") + err := method(user, projectId, phaseId) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + supports.Ok(ctx, supports.OptionSuccess, nil) + }) +} diff --git a/web/controllers/pj/ProjectPhaseResourceLst.rest.go b/web/controllers/pj/ProjectPhaseResourceLst.rest.go index c791807..0136752 100644 --- a/web/controllers/pj/ProjectPhaseResourceLst.rest.go +++ b/web/controllers/pj/ProjectPhaseResourceLst.rest.go @@ -10,6 +10,7 @@ import ( "LEIT_PM/web/supports" "github.com/kataras/iris/v12" "github.com/kataras/iris/v12/core/router" + "time" ) /****************************************************************************** diff --git a/web/controllers/pj/Resource.rest.go b/web/controllers/pj/Resource.rest.go index d559843..fd355a4 100644 --- a/web/controllers/pj/Resource.rest.go +++ b/web/controllers/pj/Resource.rest.go @@ -399,3 +399,80 @@ func RegisterUpdateResource(party router.Party, path string, method func(*global RegisterMultiResource(party, "PUT", path, method) } + +/****************************************************************************** + * + * @Function Name : RegisterEnableResource + *----------------------------------------------------------------------------- + * + * @Description : 为一个修改单条Resource的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ +func RegisterEnableResource(party router.Party, path string, method func(*global.User, string) (error)) { + + party.Post(path+"/{resourceId:string}", func(ctx iris.Context) { + user, ok := jwts.ParseToken(ctx) + if !ok { + supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) + return + } + + resourceId := ctx.Params().GetString("resourceId") + err := method(user, resourceId) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + + supports.Ok(ctx, supports.OptionSuccess, nil) + }) +} + +/****************************************************************************** + * + * @Function Name : RegisterDisableResource + *----------------------------------------------------------------------------- + * + * @Description : 为一个修改单条Resource的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : 代码生成器创建 + * + * @Date : 2021-09-06 13:59:55 + * + ******************************************************************************/ +func RegisterDisableResource(party router.Party, path string, method func(*global.User, string) (error)) { + + party.Post(path+"/{resourceId:string}", func(ctx iris.Context) { + user, ok := jwts.ParseToken(ctx) + if !ok { + supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) + return + } + + resourceId := ctx.Params().GetString("resourceId") + err := method(user, resourceId) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + + supports.Ok(ctx, supports.OptionSuccess, nil) + }) +} + diff --git a/web/controllers/pj/pj.go b/web/controllers/pj/pj.go index b1619ff..59cf9de 100644 --- a/web/controllers/pj/pj.go +++ b/web/controllers/pj/pj.go @@ -52,11 +52,11 @@ func RegisterRoutes() { // Project的服务实例 var serviceOfProject = svr.NewProjectService() // Project插入一条 - // RegisterInsertOneProject(project, "/insertone", serviceOfProject.InsertOne) + RegisterInsertOneProject(project, "/insertone", serviceOfProject.InsertOne) // Project插入多条 // RegisterInsertProject(project, "/insert", serviceOfProject.Insert) // Project删除一条 - // RegisterDeleteOneProject(project, "/deleteone", serviceOfProject.DeleteOne) + RegisterDeleteOneProject(project, "/deleteone", serviceOfProject.DeleteOne) // Project删除多条 // RegisterDeleteProject(project, "/delete", serviceOfProject.Delete) // Project查询多条 @@ -66,20 +66,21 @@ func RegisterRoutes() { // Project查询一条 RegisterSelectOneProject(project, "/selectone", serviceOfProject.SelectOne) // Project修改一条 - // RegisterUpdateOneProject(project, "/updateone", serviceOfProject.UpdateOne) + RegisterUpdateOneProject(project, "/updateone", serviceOfProject.UpdateOne) // Project修改多条 // RegisterUpdateProject(project, "/update", serviceOfProject.Update) + RegisterCloseProject(project, "/close", serviceOfProject.Close) // ProjectPaymentPhaseLst的路由组 projectpaymentphaselst := party.Party("/projectpaymentphaselst") // ProjectPaymentPhaseLst的服务实例 var serviceOfProjectPaymentPhaseLst = svr.NewProjectPaymentPhaseLstService() // ProjectPaymentPhaseLst插入一条 - // RegisterInsertOneProjectPaymentPhaseLst(projectpaymentphaselst, "/insertone", serviceOfProjectPaymentPhaseLst.InsertOne) + RegisterInsertOneProjectPaymentPhaseLst(projectpaymentphaselst, "/insertone", serviceOfProjectPaymentPhaseLst.InsertOne) // ProjectPaymentPhaseLst插入多条 // RegisterInsertProjectPaymentPhaseLst(projectpaymentphaselst, "/insert", serviceOfProjectPaymentPhaseLst.Insert) // ProjectPaymentPhaseLst删除一条 - // RegisterDeleteOneProjectPaymentPhaseLst(projectpaymentphaselst, "/deleteone", serviceOfProjectPaymentPhaseLst.DeleteOne) + RegisterDeleteOneProjectPaymentPhaseLst(projectpaymentphaselst, "/deleteone", serviceOfProjectPaymentPhaseLst.DeleteOne) // ProjectPaymentPhaseLst删除多条 // RegisterDeleteProjectPaymentPhaseLst(projectpaymentphaselst, "/delete", serviceOfProjectPaymentPhaseLst.Delete) // ProjectPaymentPhaseLst查询多条 @@ -89,7 +90,7 @@ func RegisterRoutes() { // ProjectPaymentPhaseLst查询一条 RegisterSelectOneProjectPaymentPhaseLst(projectpaymentphaselst, "/selectone", serviceOfProjectPaymentPhaseLst.SelectOne) // ProjectPaymentPhaseLst修改一条 - // RegisterUpdateOneProjectPaymentPhaseLst(projectpaymentphaselst, "/updateone", serviceOfProjectPaymentPhaseLst.UpdateOne) + RegisterUpdateOneProjectPaymentPhaseLst(projectpaymentphaselst, "/updateone", serviceOfProjectPaymentPhaseLst.UpdateOne) // ProjectPaymentPhaseLst修改多条 // RegisterUpdateProjectPaymentPhaseLst(projectpaymentphaselst, "/update", serviceOfProjectPaymentPhaseLst.Update) @@ -98,11 +99,11 @@ func RegisterRoutes() { // Phase的服务实例 var serviceOfPhase = svr.NewPhaseService() // Phase插入一条 - // RegisterInsertOnePhase(phase, "/insertone", serviceOfPhase.InsertOne) + RegisterInsertOnePhase(phase, "/insertone", serviceOfPhase.InsertOne) // Phase插入多条 // RegisterInsertPhase(phase, "/insert", serviceOfPhase.Insert) // Phase删除一条 - // RegisterDeleteOnePhase(phase, "/deleteone", serviceOfPhase.DeleteOne) + RegisterDeleteOnePhase(phase, "/deleteone", serviceOfPhase.DeleteOne) // Phase删除多条 // RegisterDeletePhase(phase, "/delete", serviceOfPhase.Delete) // Phase查询多条 @@ -112,7 +113,7 @@ func RegisterRoutes() { // Phase查询一条 RegisterSelectOnePhase(phase, "/selectone", serviceOfPhase.SelectOne) // Phase修改一条 - // RegisterUpdateOnePhase(phase, "/updateone", serviceOfPhase.UpdateOne) + RegisterUpdateOnePhase(phase, "/updateone", serviceOfPhase.UpdateOne) // Phase修改多条 // RegisterUpdatePhase(phase, "/update", serviceOfPhase.Update) @@ -121,11 +122,11 @@ func RegisterRoutes() { // Resource的服务实例 var serviceOfResource = svr.NewResourceService() // Resource插入一条 - // RegisterInsertOneResource(resource, "/insertone", serviceOfResource.InsertOne) + RegisterInsertOneResource(resource, "/insertone", serviceOfResource.InsertOne) // Resource插入多条 // RegisterInsertResource(resource, "/insert", serviceOfResource.Insert) // Resource删除一条 - // RegisterDeleteOneResource(resource, "/deleteone", serviceOfResource.DeleteOne) + RegisterDeleteOneResource(resource, "/deleteone", serviceOfResource.DeleteOne) // Resource删除多条 // RegisterDeleteResource(resource, "/delete", serviceOfResource.Delete) // Resource查询多条 @@ -135,20 +136,23 @@ func RegisterRoutes() { // Resource查询一条 RegisterSelectOneResource(resource, "/selectone", serviceOfResource.SelectOne) // Resource修改一条 - // RegisterUpdateOneResource(resource, "/updateone", serviceOfResource.UpdateOne) + RegisterUpdateOneResource(resource, "/updateone", serviceOfResource.UpdateOne) // Resource修改多条 // RegisterUpdateResource(resource, "/update", serviceOfResource.Update) + RegisterEnableResource(resource, "/enable", serviceOfResource.Enable) + + RegisterDisableResource(resource, "/disable", serviceOfResource.Disable) // ProjectPhaseLst的路由组 projectphaselst := party.Party("/projectphaselst") // ProjectPhaseLst的服务实例 var serviceOfProjectPhaseLst = svr.NewProjectPhaseLstService() // ProjectPhaseLst插入一条 - // RegisterInsertOneProjectPhaseLst(projectphaselst, "/insertone", serviceOfProjectPhaseLst.InsertOne) + RegisterInsertOneProjectPhaseLst(projectphaselst, "/insertone", serviceOfProjectPhaseLst.InsertOne) // ProjectPhaseLst插入多条 // RegisterInsertProjectPhaseLst(projectphaselst, "/insert", serviceOfProjectPhaseLst.Insert) // ProjectPhaseLst删除一条 - // RegisterDeleteOneProjectPhaseLst(projectphaselst, "/deleteone", serviceOfProjectPhaseLst.DeleteOne) + RegisterDeleteOneProjectPhaseLst(projectphaselst, "/deleteone", serviceOfProjectPhaseLst.DeleteOne) // ProjectPhaseLst删除多条 // RegisterDeleteProjectPhaseLst(projectphaselst, "/delete", serviceOfProjectPhaseLst.Delete) // ProjectPhaseLst查询多条 @@ -158,22 +162,26 @@ func RegisterRoutes() { // ProjectPhaseLst查询一条 RegisterSelectOneProjectPhaseLst(projectphaselst, "/selectone", serviceOfProjectPhaseLst.SelectOne) // ProjectPhaseLst修改一条 - // RegisterUpdateOneProjectPhaseLst(projectphaselst, "/updateone", serviceOfProjectPhaseLst.UpdateOne) + RegisterUpdateOneProjectPhaseLst(projectphaselst, "/updateone", serviceOfProjectPhaseLst.UpdateOne) // ProjectPhaseLst修改多条 // RegisterUpdateProjectPhaseLst(projectphaselst, "/update", serviceOfProjectPhaseLst.Update) + // ProjectPhaseLst修改一条 + RegisterPreadJustProjectPhaseLst(projectphaselst, "/preadjust", serviceOfProjectPhaseLst.PreadJust) + + RegisterCloseProjectPhaseLst(projectphaselst, "/close", serviceOfProjectPhaseLst.Close) // ProjectPhaseResourceLst的路由组 projectphaseresourcelst := party.Party("/projectphaseresourcelst") // ProjectPhaseResourceLst的服务实例 var serviceOfProjectPhaseResourceLst = svr.NewProjectPhaseResourceLstService() // ProjectPhaseResourceLst插入一条 - // RegisterInsertOneProjectPhaseResourceLst(projectphaseresourcelst, "/insertone", serviceOfProjectPhaseResourceLst.InsertOne) + RegisterInsertOneProjectPhaseResourceLst(projectphaseresourcelst, "/insertone", serviceOfProjectPhaseResourceLst.InsertOne) // ProjectPhaseResourceLst插入多条 // RegisterInsertProjectPhaseResourceLst(projectphaseresourcelst, "/insert", serviceOfProjectPhaseResourceLst.Insert) // ProjectPhaseResourceLst删除一条 // RegisterDeleteOneProjectPhaseResourceLst(projectphaseresourcelst, "/deleteone", serviceOfProjectPhaseResourceLst.DeleteOne) // ProjectPhaseResourceLst删除多条 - // RegisterDeleteProjectPhaseResourceLst(projectphaseresourcelst, "/delete", serviceOfProjectPhaseResourceLst.Delete) + RegisterDeleteProjectPhaseResourceLst(projectphaseresourcelst, "/delete", serviceOfProjectPhaseResourceLst.Delete) // ProjectPhaseResourceLst查询多条 RegisterSelectProjectPhaseResourceLst(projectphaseresourcelst, "/selectlist", serviceOfProjectPhaseResourceLst.Select) // ProjectPhaseResourceLst查询多条并分页 @@ -181,7 +189,7 @@ func RegisterRoutes() { // ProjectPhaseResourceLst查询一条 RegisterSelectOneProjectPhaseResourceLst(projectphaseresourcelst, "/selectone", serviceOfProjectPhaseResourceLst.SelectOne) // ProjectPhaseResourceLst修改一条 - // RegisterUpdateOneProjectPhaseResourceLst(projectphaseresourcelst, "/updateone", serviceOfProjectPhaseResourceLst.UpdateOne) + RegisterUpdateOneProjectPhaseResourceLst(projectphaseresourcelst, "/updateone", serviceOfProjectPhaseResourceLst.UpdateOne) // ProjectPhaseResourceLst修改多条 // RegisterUpdateProjectPhaseResourceLst(projectphaseresourcelst, "/update", serviceOfProjectPhaseResourceLst.Update) @@ -190,11 +198,11 @@ func RegisterRoutes() { // ProjectPhaseExpenseLst的服务实例 var serviceOfProjectPhaseExpenseLst = svr.NewProjectPhaseExpenseLstService() // ProjectPhaseExpenseLst插入一条 - // RegisterInsertOneProjectPhaseExpenseLst(projectphaseexpenselst, "/insertone", serviceOfProjectPhaseExpenseLst.InsertOne) + RegisterInsertOneProjectPhaseExpenseLst(projectphaseexpenselst, "/insertone", serviceOfProjectPhaseExpenseLst.InsertOne) // ProjectPhaseExpenseLst插入多条 // RegisterInsertProjectPhaseExpenseLst(projectphaseexpenselst, "/insert", serviceOfProjectPhaseExpenseLst.Insert) // ProjectPhaseExpenseLst删除一条 - // RegisterDeleteOneProjectPhaseExpenseLst(projectphaseexpenselst, "/deleteone", serviceOfProjectPhaseExpenseLst.DeleteOne) + RegisterDeleteOneProjectPhaseExpenseLst(projectphaseexpenselst, "/deleteone", serviceOfProjectPhaseExpenseLst.DeleteOne) // ProjectPhaseExpenseLst删除多条 // RegisterDeleteProjectPhaseExpenseLst(projectphaseexpenselst, "/delete", serviceOfProjectPhaseExpenseLst.Delete) // ProjectPhaseExpenseLst查询多条 @@ -204,7 +212,7 @@ func RegisterRoutes() { // ProjectPhaseExpenseLst查询一条 RegisterSelectOneProjectPhaseExpenseLst(projectphaseexpenselst, "/selectone", serviceOfProjectPhaseExpenseLst.SelectOne) // ProjectPhaseExpenseLst修改一条 - // RegisterUpdateOneProjectPhaseExpenseLst(projectphaseexpenselst, "/updateone", serviceOfProjectPhaseExpenseLst.UpdateOne) + RegisterUpdateOneProjectPhaseExpenseLst(projectphaseexpenselst, "/updateone", serviceOfProjectPhaseExpenseLst.UpdateOne) // ProjectPhaseExpenseLst修改多条 // RegisterUpdateProjectPhaseExpenseLst(projectphaseexpenselst, "/update", serviceOfProjectPhaseExpenseLst.Update) }) diff --git a/web/routes/routes.go b/web/routes/routes.go index 4422556..d05a443 100644 --- a/web/routes/routes.go +++ b/web/routes/routes.go @@ -1,7 +1,6 @@ package routes import ( - "github.com/kataras/iris/v12" "LEIT_PM/container" "LEIT_PM/db" "LEIT_PM/grmi" @@ -10,8 +9,10 @@ import ( _ "LEIT_PM/services/base/specifications" _ "LEIT_PM/web/controllers/base" homereg "LEIT_PM/web/controllers/home" + _ "LEIT_PM/web/controllers/pj" "LEIT_PM/web/middleware" "LEIT_PM/web/middleware/cors" + "github.com/kataras/iris/v12" ) // 所有的路由