2
3
Yikoo 5 жил өмнө
parent
commit
67a4f6859a

+ 12 - 13
src/dashoo.cn/backend/api/business/oilcontract/contractEvaluationItems/contractEvaluationItems.go

@@ -5,17 +5,16 @@ import (
 )
 
 type OilContractEvaluationItems struct {
-	Id             int       `json:"Id" xorm:"not null pk autoincr comment('ID') INT(11) 'Id'"`
-	ContractId     int       `json:"ContractId" xorm:"default 0 comment('合同表ID') INT(11) 'ContractId'"`
-	ContractWorkId int       `json:"ContractId" xorm:"default 0 comment('ReviewWork表ID') INT(11) 'ContractWorkId'"`
-	ParentId       int       `json:"ParentId" xorm:"not null default 0 comment('上级节点ID') INT(11) 'ParentId'"`
-	SequenceNo     string    `json:"SequenceNo" xorm:"default '0' comment('序号') VARCHAR(50) 'SequenceNo'"`
-	Content        string    `json:"content" xorm:"comment('评价内容') VARCHAR(1000) 'content'"`
-	NormalScore    string    `json:"NormalScore" xorm:"comment('标准分值') DECIMAL(11,2) 'NormalScore'"`
-	Score          string    `json:"Score" xorm:"comment('实得分数') DECIMAL(11,2) 'Score'"`
-	LevelCode      int       `json:"LevelCode" xorm:"not null default 0 comment('级别') INT(11) 'LevelCode'"`
-	Remark         string    `json:"Remark" xorm:"comment('备注') VARCHAR(500) 'Remark'"`
-	ModifiedOn     time.Time `json:"ModifiedOn" xorm:"DATETIME 'ModifiedOn'"`
-	ModifiedUserId int       `json:"ModifiedUserId" xorm:"INT(11) 'ModifiedUserId'"`
-	ModifiedBy     string    `json:"ModifiedBy" xorm:"VARCHAR(50) 'ModifiedBy'"`
+	Id              int       `json:"Id" xorm:"not null pk autoincr comment('ID') INT(11) 'Id'"`
+	ContentReviewId int       `json:"ContentReviewId" xorm:"default 0 comment('评价ID') INT(11) 'ContentReviewId'"`
+	ParentId        int       `json:"ParentId" xorm:"not null default 0 comment('上级节点ID') INT(11) 'ParentId'"`
+	SequenceNo      string    `json:"SequenceNo" xorm:"default '0' comment('序号') VARCHAR(50) 'SequenceNo'"`
+	Content         string    `json:"Content" xorm:"comment('评价内容') VARCHAR(1000) 'Content'"`
+	NormalScore     string    `json:"NormalScore" xorm:"comment('标准分值') DECIMAL(11,2) 'NormalScore'"`
+	Score           string    `json:"Score" xorm:"comment('实得分数') DECIMAL(11,2) 'Score'"`
+	LevelCode       int       `json:"LevelCode" xorm:"not null default 0 comment('级别') INT(11) 'LevelCode'"`
+	Remark          string    `json:"Remark" xorm:"comment('备注') VARCHAR(500) 'Remark'"`
+	ModifiedOn      time.Time `json:"ModifiedOn" xorm:"DATETIME 'ModifiedOn'"`
+	ModifiedUserId  int       `json:"ModifiedUserId" xorm:"INT(11) 'ModifiedUserId'"`
+	ModifiedBy      string    `json:"ModifiedBy" xorm:"VARCHAR(50) 'ModifiedBy'"`
 }

+ 34 - 6
src/dashoo.cn/backend/api/business/oilcontract/contractReview/contractReview.go

@@ -3,16 +3,44 @@ import (
 	"time"
 )
 type OilContractReview struct {
+	Id                int       `json:"Id" xorm:"not null pk autoincr INT(11) 'Id'"`
+	ContractId        int       `json:"ContractId" xorm:"not null comment('合同表Id') INT(11) 'ContractId'"`
+	Status            string    `json:"Status" xorm:"not null default '0' comment('状态标识( 0 初始 - 1待二级初审 - 2待二级复审 - 3-专业科室接收 4 待专业科室审核 - 5 待集中评审 - 6 待交费 - 7 待入库 - 8 完成 - 9审核未通过)') VARCHAR(10) 'Status'"`
+	WorkflowId        string    `json:"WorkflowId" xorm:"default '0' comment('工作流的ID') VARCHAR(50) 'WorkflowId'"`
+	BusinessKey       string    `json:"BusinessKey" xorm:"comment('流程序号') VARCHAR(255) 'BusinessKey'"`
+	ProcessKey        string    `json:"ProcessKey" xorm:"comment('工作流名称') VARCHAR(255) 'ProcessKey'"`
+	BackRemark        string    `json:"BackRemark" xorm:"comment('退回原因') VARCHAR(255) 'BackRemark'"`
+	FirstAudit        int       `json:"FirstAudit" xorm:"comment('初审') INT(11) 'FirstAudit'"`
+	SecondAudit       int       `json:"SecondAudit" xorm:"comment('复审') INT(11) 'SecondAudit'"`
+	ThirdAudit        int       `json:"ThirdAudit" xorm:"comment('专业科室审批') INT(11) 'ThirdAudit'"`
+	FourthAudit       int       `json:"FourthAudit" xorm:"comment('集中审批') INT(11) 'FourthAudit'"`
+	ProfessionalAudit int       `json:"ProfessionalAudit" xorm:"comment('业务处室专业审批人id') INT(11) 'ProfessionalAudit'"`
+	AuditIndex        int       `json:"AuditIndex" xorm:"default 0 comment('审批次数') INT(11) 'AuditIndex'"`
+	CreateOn          time.Time `json:"CreateOn" xorm:"DATETIME 'CreateOn'"`
+	CreateUserId      int       `json:"CreateUserId" xorm:"INT(11) 'CreateUserId'"`
+	CreateBy          string    `json:"CreateBy" xorm:"VARCHAR(50) 'CreateBy'"`
+	ModifiedOn        time.Time `json:"ModifiedOn" xorm:"DATETIME 'ModifiedOn'"`
+	ModifiedUserId    int       `json:"ModifiedUserId" xorm:"INT(11) 'ModifiedUserId'"`
+	ModifiedBy        string    `json:"ModifiedBy" xorm:"VARCHAR(50) 'ModifiedBy'"`
+}
+type OilContractReviewVo struct {
+	Items []*OilContractEvaluationItemsVo
 	Id             int       `json:"Id" xorm:"not null pk INT(11) 'Id'"`
 	ContractId     int       `json:"ContractId" xorm:"not null comment('合同表Id') INT(11) 'ContractId'"`
 	WorkflowId     string    `json:"WorkflowId" xorm:"default '0' comment('工作流的ID') VARCHAR(50) 'WorkflowId'"`
 	BusinessKey    string    `json:"BusinessKey" xorm:"comment('流程序号') VARCHAR(255) 'BusinessKey'"`
 	ProcessKey     string    `json:"ProcessKey" xorm:"comment('工作流名称') VARCHAR(255) 'ProcessKey'"`
 	BackRemark     string    `json:"BackRemark" xorm:"comment('退回原因') VARCHAR(255) 'BackRemark'"`
-	CreateOn       time.Time `json:"CreateOn" xorm:"DATETIME 'CreateOn'"`
-	CreateUserId   int       `json:"CreateUserId" xorm:"INT(11) 'CreateUserId'"`
-	CreateBy       string    `json:"CreateBy" xorm:"VARCHAR(50) 'CreateBy'"`
-	ModifiedOn     time.Time `json:"ModifiedOn" xorm:"DATETIME 'ModifiedOn'"`
-	ModifiedUserId int       `json:"ModifiedUserId" xorm:"INT(11) 'ModifiedUserId'"`
-	ModifiedBy     string    `json:"ModifiedBy" xorm:"VARCHAR(50) 'ModifiedBy'"`
 }
+type OilContractEvaluationItemsVo struct{
+	Id             int       `json:"Id" xorm:"not null pk autoincr comment('ID') INT(11) 'Id'"`
+	ContractId     int       `json:"ContractId" xorm:"default 0 comment('合同表ID') INT(11) 'ContractId'"`
+	ContractWorkId int       `json:"ContractId" xorm:"default 0 comment('ReviewWork表ID') INT(11) 'ContractWorkId'"`
+	ParentId       int       `json:"ParentId" xorm:"not null default 0 comment('上级节点ID') INT(11) 'ParentId'"`
+	SequenceNo     string    `json:"SequenceNo" xorm:"default '0' comment('序号') VARCHAR(50) 'SequenceNo'"`
+	Content        string    `json:"content" xorm:"comment('评价内容') VARCHAR(1000) 'content'"`
+	NormalScore    string    `json:"NormalScore" xorm:"comment('标准分值') DECIMAL(11,2) 'NormalScore'"`
+	Score          string    `json:"Score" xorm:"comment('实得分数') DECIMAL(11,2) 'Score'"`
+	LevelCode      int       `json:"LevelCode" xorm:"not null default 0 comment('级别') INT(11) 'LevelCode'"`
+	Remark         string    `json:"Remark" xorm:"comment('备注') VARCHAR(500) 'Remark'"`
+}

+ 92 - 22
src/dashoo.cn/backend/api/controllers/oilcontract/contractReview.go

@@ -1,11 +1,12 @@
 package oilcontract
 
 import (
+	"dashoo.cn/backend/api/business/oilcontract/contractEvaluationItems"
 	"dashoo.cn/backend/api/business/oilcontract/contractReview"
 	"encoding/json"
 	"strings"
 	"time"
-
+	"fmt"
 	"dashoo.cn/backend/api/business/baseUser"
 	//	"dashoo.cn/backend/api/business/items"
 	. "dashoo.cn/backend/api/controllers"
@@ -150,23 +151,43 @@ func (this *OilContractReviewController) GetEntity() {
 // @Success	200	{object} controllers.Request
 // @router /add [post]
 func (this *OilContractReviewController) AddEntity() {
-	var model contractReview.OilContractReview
+	var modeVO contractReview.OilContractReviewVo
 	var jsonBlob = this.Ctx.Input.RequestBody
-	svc := contractReview.GetOilContractReviewService(utils.DBE)
-
-	json.Unmarshal(jsonBlob, &model)
-	model.CreateOn = time.Now()
-	model.CreateBy = this.User.Realname
-	model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
-
-	_, err := svc.InsertEntityBytbl(this.User.AccCode+OilContractReviewName, &model)
+	json.Unmarshal(jsonBlob, &modeVO)
 
+	svc := contractReview.GetOilContractReviewService(utils.DBE)
+	itemSvc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
+	var reviewMode contractReview.OilContractReview
+	reviewMode.ContractId = modeVO.ContractId
+	reviewMode.Status = "0"
+	reviewMode.CreateOn = time.Now()
+	reviewMode.CreateBy = this.User.Realname
+	reviewMode.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
+	_, err := svc.InsertEntityBytbl(OilContractReviewName, &reviewMode)
+
+	var items []contractEvaluationItems.OilContractEvaluationItems
+	// 新增配置项
+	for i,v := range modeVO.Items{
+		fmt.Print(i)
+		var temp contractEvaluationItems.OilContractEvaluationItems
+		temp.ContentReviewId = reviewMode.Id
+		temp.ParentId = v.ParentId
+		temp.SequenceNo = v.SequenceNo
+		temp.Content = v.Content
+		temp.NormalScore = v.NormalScore
+		temp.Score = v.Score
+		temp.LevelCode = v.LevelCode
+		temp.Remark = v.Remark
+		temp.Content = v.Content
+		items = append(items, temp)
+	}
+	itemSvc.DBE.Insert(items)
 	var errinfo ErrorDataInfo
 	if err == nil {
 		//新增
 		errinfo.Message = "添加成功!"
 		errinfo.Code = 0
-		errinfo.Item = model.Id
+		errinfo.Item = reviewMode.Id
 		this.Data["json"] = &errinfo
 		this.ServeJSON()
 	} else {
@@ -193,20 +214,25 @@ func (this *OilContractReviewController) UpdateEntity() {
 		return
 	}
 
-	var model contractReview.OilContractReview
+	var modeVO contractReview.OilContractReviewVo
 	svc := contractReview.GetOilContractReviewService(utils.DBE)
-
+	itemSvc := contractEvaluationItems.GetOilContractEvaluationItemsService(utils.DBE)
 	var jsonBlob = this.Ctx.Input.RequestBody
-	json.Unmarshal(jsonBlob, &model)
-	model.ModifiedOn = time.Now()
-	model.ModifiedBy = this.User.Realname
-	model.ModifiedUserId, _ = utils.StrTo(this.User.Id).Int()
+	json.Unmarshal(jsonBlob, &modeVO)
 
-	cols := []string{
+	var reviewMode contractReview.OilContractReview
+	reviewMode.ContractId = modeVO.ContractId
+	reviewMode.Status = "0"
+	reviewMode.ModifiedOn = time.Now()
+	reviewMode.ModifiedBy = this.User.Realname
+	reviewMode.ModifiedUserId, _ = utils.StrTo(this.User.Id).Int()
 
+	cols := []string{
 		"Id",
 
-		"ContractEId",
+		"ContractId",
+
+		"Status",
 
 		"WorkflowId",
 
@@ -216,7 +242,17 @@ func (this *OilContractReviewController) UpdateEntity() {
 
 		"BackRemark",
 
-		"ReviewType",
+		"FirstAudit",
+
+		"SecondAudit",
+
+		"ThirdAudit",
+
+		"FourthAudit",
+
+		"ProfessionalAudit",
+
+		"AuditIndex",
 
 		"CreateOn",
 
@@ -224,9 +260,38 @@ func (this *OilContractReviewController) UpdateEntity() {
 
 		"CreateBy",
 
+		"ModifiedOn",
+
+		"ModifiedUserId",
 
+		"ModifiedBy",
+	}
+	err := svc.UpdateEntityBytbl(OilContractReviewName, id, &reviewMode, cols)
+
+
+	where := "ContentReviewId=" + id
+	// 清除掉之前的
+	itemSvc.DeleteEntityBytbl(OilContractReviewName,where)
+
+	var items []contractEvaluationItems.OilContractEvaluationItems
+	// 新增配置项
+	for i,v := range modeVO.Items{
+		fmt.Print(i)
+		var temp contractEvaluationItems.OilContractEvaluationItems
+		temp.ContentReviewId = reviewMode.Id
+		temp.ParentId = v.ParentId
+		temp.SequenceNo = v.SequenceNo
+		temp.Content = v.Content
+		temp.NormalScore = v.NormalScore
+		temp.Score = v.Score
+		temp.LevelCode = v.LevelCode
+		temp.Remark = v.Remark
+		temp.Content = v.Content
+		items = append(items, temp)
 	}
-	err := svc.UpdateEntityBytbl(this.User.AccCode+OilContractReviewName, id, &model, cols)
+	itemSvc.DBE.Insert(items)
+
+
 	if err == nil {
 		errinfo.Message = "修改成功!"
 		errinfo.Code = 0
@@ -258,8 +323,13 @@ func (this *OilContractReviewController) DeleteEntity() {
 	var model contractReview.OilContractReview
 	var entityempty contractReview.OilContractReview
 	svc := contractReview.GetOilContractReviewService(utils.DBE)
+
+	// 评分审核是否结束校验
+
+
+
 	opdesc := "删除-" + Id
-	err := svc.DeleteOperationAndWriteLogBytbl(this.User.AccCode+OilContractReviewName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "钻井日报")
+	err := svc.DeleteOperationAndWriteLogBytbl(OilContractReviewName, BaseOperationLogName, Id, &model, &entityempty, utils.ToStr(this.User.Id), this.User.Username, opdesc, this.User.AccCode, "钻井日报")
 	if err == nil {
 		errinfo.Message = "删除成功"
 		errinfo.Code = 0

+ 6 - 0
src/dashoo.cn/backend/api/routers/router.go

@@ -483,6 +483,12 @@ func init() {
 				&oilcontract.OilEvaluationItemsController{},
 			),
 		),
+		// 合同评价
+		beego.NSNamespace("/contract-review",
+			beego.NSInclude(
+				&oilcontract.OilContractReviewController{},
+			),
+		),
 	)
 	beego.AddNamespace(ns)
 }