瀏覽代碼

年审接口调整

Yikoo 5 年之前
父節點
當前提交
a12b8d39e6

+ 14 - 11
src/dashoo.cn/backend/api/business/oilcontract/contractSumScore/contractSumScore.go

@@ -6,24 +6,27 @@ import (
 
 type OilContractSumScore struct {
 	Id               int       `json:"Id" xorm:"not null pk autoincr comment('ID') INT(11) 'Id'"`
+	SupplierId       int       `json:"SupplierId" xorm:"default 0 comment('供应商ID') INT(11) 'SupplierId'"`
+	SupplierName     string    `json:"SupplierName" xorm:"comment('企业名称') VARCHAR(255) 'SupplierName'"`
 	ContractId       int       `json:"ContractId" xorm:"not null default 0 comment('合同表ID') INT(11) 'ContractId'"`
 	Category         int       `json:"Category" xorm:"not null default 0 comment('0二级单位创建1专业处创建') INT(11) 'Category'"`
-	SumScore         string    `json:"SumScore" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore'"`
+	SumScore         float64   `json:"SumScore" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore'"`
 	Content1    	 string    `json:"Content1" xorm:"default '0' comment('评价内容') VARCHAR(50) 'Content1'"`
-	NormalSumScore1  string    `json:"NormalSumScore1" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore1'"`
-	SumScore1        string    `json:"SumScore1" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore1'"`
+	NormalSumScore1  float64   `json:"NormalSumScore1" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore1'"`
+	SumScore1        float64   `json:"SumScore1" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore1'"`
 	Content2    	 string    `json:"Content2" xorm:"default '0' comment('评价内容') VARCHAR(50) 'Content2'"`
-	NormalSumScore2  string    `json:"NormalSumScore2" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore2'"`
-	SumScore2        string    `json:"SumScore2" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore2'"`
+	NormalSumScore2  float64   `json:"NormalSumScore2" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore2'"`
+	SumScore2        float64   `json:"SumScore2" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore2'"`
 	Content3    	 string    `json:"Content3" xorm:"default '0' comment('评价内容') VARCHAR(50) 'Content3'"`
-	NormalSumScore3  string    `json:"NormalSumScore3" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore3'"`
-	SumScore3        string    `json:"SumScore3" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore3'"`
+	NormalSumScore3  float64   `json:"NormalSumScore3" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore3'"`
+	SumScore3        float64   `json:"SumScore3" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore3'"`
 	Content4    	 string    `json:"Content4" xorm:"default '0' comment('评价内容') VARCHAR(50) 'Content4'"`
-	NormalSumScore4  string    `json:"NormalSumScore4" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore4'"`
-	SumScore4        string    `json:"SumScore4" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore4'"`
+	NormalSumScore4  float64   `json:"NormalSumScore4" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore4'"`
+	SumScore4        float64   `json:"SumScore4" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore4'"`
 	Content5    	 string    `json:"Content5" xorm:"default '0' comment('评价内容') VARCHAR(50) 'Content5'"`
-	NormalSumScore5  string    `json:"NormalSumScore5" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore5'"`
-	SumScore5        string    `json:"SumScore5" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore5'"`
+	NormalSumScore5  float64   `json:"NormalSumScore5" xorm:"default 0.00 comment('标准分值') DECIMAL(11,2) 'NormalSumScore5'"`
+	SumScore5        float64   `json:"SumScore5" xorm:"default 0.00 comment('实际分值') DECIMAL(11,2) 'SumScore5'"`
+	Status           string    `json:"Status" xorm:"not null default '0' comment('状态标识( 0 初始 - 1待二级初审 - 2待二级复审 - 3-专业科室接收 4 待专业科室审核 - 5 待集中评审 - 6 待交费 - 7 待入库 - 8 完成 - 9审核未通过)') VARCHAR(10) 'Status'"`
 	Note			 string    `json:"Note" xorm:"comment('备注') VARCHAR(255) 'Note'"`
 	ConclusionReason string    `json:"ConclusionReason" xorm:"comment('不合格原因') VARCHAR(255) 'ConclusionReason'"`
 	Conclusion       int       `json:"Conclusion" xorm:"default 0 comment('0不合格,1观察使用,2合格,3优秀') INT(11) 'Conclusion'"`

+ 11 - 11
src/dashoo.cn/backend/api/business/oilcontract/contractSumScore/contractSumScoreService.go

@@ -30,17 +30,17 @@ func (s *OilContractSumScoreService) GetPagingComputeEntitiesWithOrderBytbl(page
 	sqlCount += ` ) t `
 
 	var sql string
-	sql =  `select contract.SupplierId,contract.SupplierName,count(review.id) as count,sum(items.Score)/count(review.id) as Score, `
-	sql += ` sum(case when items.SequenceNo in  ('1') then items.Score else 0 end)/count(review.id) Score1,  `
-	sql += ` sum(case when items.SequenceNo in  ('2') then items.Score else 0 end)/count(review.id) Score2,  `
-	sql += ` sum(case when items.SequenceNo in  ('3') then items.Score else 0 end)/count(review.id) Score3,  `
-	sql += ` sum(case when items.SequenceNo in  ('4') then items.Score else 0 end)/count(review.id) Score4,  `
-	sql += ` sum(case when items.SequenceNo in  ('5') then items.Score else 0 end)/count(review.id) Score5,  `
-	sql += ` sum(case when items.SequenceNo in  ('6') then items.Score else 0 end)/count(review.id) Score6,  `
-	sql += ` sum(case when items.SequenceNo in  ('7') then items.Score else 0 end)/count(review.id) Score7,  `
-	sql += ` sum(case when items.SequenceNo in  ('8') then items.Score else 0 end)/count(review.id) Score8,  `
-	sql += ` sum(case when items.SequenceNo in  ('9') then items.Score else 0 end)/count(review.id) Score9,  `
-	sql += ` case when sum(items.Score)/count(review.id) <60 then '不合格' when sum(items.Score)/count(review.id) <80 then '合格' else '优秀' end as Evaluate `
+	sql =  `select contract.SupplierId,contract.SupplierName,count(review.id) as count,ROUND(sum(items.Score)/count(review.id),2) as Score, `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('1') then items.Score else 0 end)/count(review.id),2) Score1,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('2') then items.Score else 0 end)/count(review.id),2) Score2,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('3') then items.Score else 0 end)/count(review.id),2) Score3,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('4') then items.Score else 0 end)/count(review.id),2) Score4,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('5') then items.Score else 0 end)/count(review.id),2) Score5,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('6') then items.Score else 0 end)/count(review.id),2) Score6,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('7') then items.Score else 0 end)/count(review.id),2) Score7,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('8') then items.Score else 0 end)/count(review.id),2) Score8,  `
+	sql += ` ROUND(sum(case when items.SequenceNo in  ('9') then items.Score else 0 end)/count(review.id),2) Score9,  `
+	sql += ` case when sum(items.Score)/count(review.id) <60 then 3 when sum(items.Score)/count(review.id) <80 then 2 else 1 end as Evaluate `
 	sql += ` from ` + controllers.OilContractReviewName + ` review `
 	sql += ` left join ` + controllers.OilContractName + ` contract on review.ContractId=contract.id `
 	sql += ` left join ` + controllers.OilContractEvaluationItemsName + ` items on items.ContentReviewId=review.id and items.LevelCode=1 `

+ 2 - 4
src/dashoo.cn/backend/api/controllers/oilcontract/contractSumScore.go

@@ -264,11 +264,9 @@ func (this *OilContractSumScoreController) GetDictList() {
 // @router /get/:id [get]
 func (this *OilContractSumScoreController) GetEntity() {
 	Id := this.Ctx.Input.Param(":id")
-
 	var model contractSumScore.OilContractSumScore
 	svc := contractSumScore.GetOilContractSumScoreService(utils.DBE)
 	svc.GetEntityByIdBytbl(this.User.AccCode+OilContractSumScoreName, Id, &model)
-
 	this.Data["json"] = &model
 	this.ServeJSON()
 }
@@ -282,14 +280,14 @@ func (this *OilContractSumScoreController) AddEntity() {
 	var model contractSumScore.OilContractSumScore
 	var jsonBlob = this.Ctx.Input.RequestBody
 	svc := contractSumScore.GetOilContractSumScoreService(utils.DBE)
-
 	json.Unmarshal(jsonBlob, &model)
+	model.Status   = "0"
 	model.Category = 1                      // 二级单位创建
 	model.CreateOn = time.Now()
 	model.CreateBy = this.User.Realname
 	model.CreateUserId, _ = utils.StrTo(this.User.Id).Int()
 
-	_, err := svc.InsertEntityBytbl(this.User.AccCode+OilContractSumScoreName, &model)
+	_, err := svc.InsertEntityBytbl(OilContractSumScoreName, &model)
 	var errinfo ErrorDataInfo
 	if err == nil {
 		//新增

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

@@ -489,12 +489,6 @@ func init() {
 				&oilcontract.OilContractReviewController{},
 			),
 		),
-		// 合同评价明细
-		beego.NSNamespace("/contract-evaluation",
-			beego.NSInclude(
-				&oilcontract.OilContractEvaluationItemsController{},
-			),
-		),
 		// 合同评价工单
 		beego.NSNamespace("/contract-order",
 			beego.NSInclude(

+ 2 - 2
src/dashoo.cn/frontend_web/nuxt.config.js

@@ -171,8 +171,8 @@ module.exports = {
 
 
   axios: {
-    baseURL: '//192.168.1.44:10091/api/' // 本机开发使用
-    // baseURL: '//localhost:10091/api/' // 本机开发使用
+    //baseURL: '//192.168.1.44:10091/api/' // 本机开发使用
+     baseURL: '//localhost:10091/api/' // 本机开发使用
     // baseURL: '//192.168.1.41:10091/api/' // 本机开发使用
     // baseURL: '//192.168.124.13:10091/api/' // 本机开发使用
 

+ 16 - 0
src/dashoo.cn/frontend_web/src/api/oilcontract/contractSumScore.js

@@ -0,0 +1,16 @@
+export default {
+    GetComputeList(CreateOn, params,myAxios){  //  计算列表
+        return myAxios({
+            url: '/contract-score/compute-list?CreateOn='+ CreateOn,
+            method: 'GET',
+            params: params
+          });
+    },
+    addEntity(formData, myAxios) {   // 新增年度审核
+        return myAxios({
+          url: '/contract-score/add',
+          method: 'post',
+          data: formData
+        })
+      },
+}

+ 86 - 211
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service-year-check/_opera/operation.vue

@@ -13,199 +13,61 @@
         <span>
           <i class="icon icon-table2"></i> 编辑
         </span>
+        <span style="float: right;">
+          <el-button type="primary" size="mini"  @click="saveEntity">保存</el-button>
+        </span>
       </div>
       <el-tabs v-model="activeName" style="margin-top: -10px">
-        <el-tab-pane label="合同内容" name="1">
+        <el-tab-pane label="评价信息" name="1">
           <el-card class="box-card" style="mini-height: calc(100vh - 113px);">
-            <div slot="header">
-              <span>合同信息</span>
-              <span style="float: right;">
-                <el-button type="primary" size="mini" @click="saveEntity">保存</el-button>
-                <router-link :to="'/oilcontract/contract'">
-                  <el-button type="primary" size="mini" style="margin-left: 8px">返回</el-button>
-                </router-link>
-              </span>
-            </div>
             <el-form label-width="110px" ref="EntityForm" :model="formData">
               <el-row>
                 <el-col :span="8">
-                  <el-form-item label="企业名称">
-                    <el-select ref="SupplierSelect" v-model="formData.SupplierId" placeholder="请选择" style="width: 100%" @change="supplierChangeHandler">
-                      <el-option key="1" label="天津油气公司" value="1"></el-option>
-                      <el-option key="2" label="北京管道公司" value="2"></el-option>
-                      <el-option key="3" label="上海监控公司" value="3"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="合同分类">
-                    <el-select  v-model="formData.ContractType" placeholder="请选择" style="width: 100%">
-                      <el-option key="1" label="服务商" value="1"></el-option>
-                      <el-option key="2" label="承包商" value="2"></el-option>
-                      <el-option key="3" label="供应商" value="3"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="项目名称">
-                    <el-input v-model="formData.ProjectName" placeholder="请输入"  style="width: 100%"></el-input>
+                  <el-form-item label="服务商名称">
+                    <el-input disabled="disabled" v-model="formData.SupplierName"  style="width: 100%"></el-input>
                   </el-form-item>
                 </el-col>
 
                 <el-col :span="8">
-                  <el-form-item label="合同编号">
-                    <el-input required v-model="formData.ContractNo" placeholder="请输入"  style="width: 100%"></el-input>
+                  <el-form-item label="评价得分">
+                    <el-input-number v-model="formData.SumScore" placeholder="请输入"  style="width: 100%" />
                   </el-form-item>
                 </el-col>
 
                 <el-col :span="8">
-                  <el-form-item label="工程地点">
-                    <el-input v-model="formData.ProjectPlace" placeholder="请输入"  style="width: 100%"></el-input>
+                  <el-form-item label="项目管理(40分)">
+                    <el-input-number v-model="formData.SumScore1" placeholder="请输入"  style="width: 100%" />
                   </el-form-item>
                 </el-col>
 
                 <el-col :span="8">
-                  <el-form-item label="项目负责人">
-                    <el-input v-model="formData.ProjectOwner" placeholder="请输入"  style="width: 100%"></el-input>
+                  <el-form-item label="HSE管理(30分)">
+                    <el-input-number v-model="formData.SumScore2" placeholder="请输入"  style="width: 100%" />
                   </el-form-item>
                 </el-col>
 
                 <el-col :span="8">
-                  <el-form-item label="联系人电话">
-                    <el-input v-model="formData.Telephone" placeholder="请输入"  style="width: 100%"></el-input>
+                  <el-form-item label="合同履行(15分)">
+                    <el-input-number v-model="formData.SumScore3" placeholder="请输入"  style="width: 100%" />
                   </el-form-item>
                 </el-col>
 
                 <el-col :span="8">
-                  <el-form-item label="项目类别">
-                    <el-select v-model="formData.ProjectType" placeholder="请选择" style="width: 100%">
-                      <el-option key="1" label="咨询" value="1"></el-option>
-                      <el-option key="2" label="勘探" value="2"></el-option>
-                      <el-option key="3" label="设计" value="3"></el-option>
-                      <el-option key="4" label="施工" value="4"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="合同模式">
-                    <el-input v-model="formData.ContractMode" placeholder="请输入"  style="width: 100%"></el-input>
+                  <el-form-item label="企业诚信(15分)">
+                    <el-input-number v-model="formData.SumScore4" placeholder="请输入"  style="width: 100%" />
                   </el-form-item>
                 </el-col>
 
                 <el-col :span="8">
-                  <el-form-item label="是否分包">
-                    <el-select placeholder="请选择" v-model="formData.SubPackage" style="width: 100%">
-                      <el-option key="1" label="是" value="1"></el-option>
-                      <el-option key="2" label="否" value="2"></el-option>
+                  <el-form-item label="评价结果">
+                    <el-select v-model="formData.Conclusion" placeholder="请选择" style="width: 100%">
+                      <el-option key="1" label="优秀" value="1"></el-option>
+                      <el-option key="2" label="合格" value="2"></el-option>
+                      <el-option key="3" label="不合格" value="3"></el-option>
                     </el-select>
                   </el-form-item>
                 </el-col>
 
-                <el-col :span="8">
-                  <el-form-item label="合同总金额">
-                    <el-input v-model="formData.Amount" placeholder="请输入"  style="width: 100%">
-                      <template slot="append">(万元)</template>
-                    </el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="合同总工期">
-                    <el-input v-model="formData.ContractPeriod" placeholder="请输入"  style="width: 100%">
-                      <template slot="append">(天)</template>
-                    </el-input>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-              <el-row>
-                <el-col :span="8">
-                  <el-form-item label="开工日期">
-                    <el-input v-model="formData.OpenDate" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="计划竣工时间">
-                    <el-input v-model="formData.PlanFinishDate" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-              <el-row>
-                <el-col :span="8">
-                  <el-form-item label="建设单位">
-                    <el-input v-model="formData.ConstructionUnit" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="建设负责人">
-                    <el-input v-model="formData.ConstructionOwner" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="手机号">
-                    <el-input v-model="formData.ConstructionTelphone" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="施工单位">
-                    <el-input v-model="formData.BuildUnit" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="施工负责人">
-                    <el-input v-model="formData.BuildOwner" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="手机号">
-                    <el-input v-model="formData.BuildTelphone" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="监理单位">
-                    <el-input v-model="formData.SuperviseUnit" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="监理负责人">
-                    <el-input v-model="formData.SuperviseOwner" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="手机号">
-                    <el-input v-model="formData.SuperviseTelphone" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="质量监督单位">
-                    <el-input v-model="formData.QualityUnit" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="质量监督负责人">
-                    <el-input v-model="formData.QualityOwner" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
-                <el-col :span="8">
-                  <el-form-item label="手机号">
-                    <el-input v-model="formData.QualityTelphone" placeholder="请输入"  style="width: 100%"></el-input>
-                  </el-form-item>
-                </el-col>
-
                 <el-col :span="24">
                   <el-form-item label="备注">
                     <el-input type="textarea" v-model="formData.Remark" placeholder="请输入"  style="width: 100%"></el-input>
@@ -218,9 +80,25 @@
         <el-tab-pane label="基本条件评价" name="2">
           <base-list></base-list>
         </el-tab-pane>
-        <el-tab-pane label="业绩评价" name="3">
+        <el-tab-pane label="专业处室基本条件评价" name="3">
+          <base-list></base-list>
+        </el-tab-pane>
+        <el-tab-pane label="业绩评价" name="4">
+          <evaluation-list></evaluation-list>
+        </el-tab-pane>
+        <el-tab-pane label="专业处室业绩评价" name="5">
           <evaluation-list></evaluation-list>
         </el-tab-pane>
+        <el-tab-pane label="审批流程" name="6">
+          <el-card class="box-card mycard">
+            <div slot="header"
+                 class="clearfix">
+              <span>审批流程</span>
+            </div>
+            <!-- :entryinfo="entrydetail" -->
+            <wf-history ref="WfHistory" :entryinfo="entrydetail"></wf-history>
+          </el-card>
+        </el-tab-pane>
       </el-tabs>
     </el-card>
 
@@ -231,9 +109,10 @@
   import {
     mapGetters
   } from 'vuex'
-  import api from '@/api/oilcontract/contract'
+  import api from '@/api/oilcontract/contractSumScore'
   import evaluationList from './evaluationlist'
   import baseList from './baselist'
+  import WfHistory from '@/components/workflow/wfhistory.vue'
   export default {
     computed: {
       ...mapGetters({
@@ -243,52 +122,33 @@
     name: 'oilcontractEdit',
     components: {
       evaluationList,
-      baseList
+      baseList,
+      WfHistory
     },
 
     data() {
       return {
+        // 当前操作
+        operate:'add',   // add 新增 edit 编辑
+        // 工作流
+        entrydetail: {
+          process: '',
+          business: '',
+          instance: ''
+        },
         activeName: '1',
         serviceId: '',
         formData: {
           Id: '',
-          SupplierId: '1',
-          SupplierName: '',
-          ProjectName: '',
-          ContractNo: '',
-          ProjectPlace: '',
-          ProjectOwner: '',
-          Telephone: '',
-          ProjectType: '1',
-          ContractMode: '',
-          Amount: '',
-          ContractPeriod: '',
-          OpenDate: '',
-          PlanFinishDate: '',
-          ConstructionUnit: '',
-          ConstructionOwner: '',
-          ConstructionTelphone: '',
-          BuildUnit: '',
-          BuildOwner: '',
-          BuildTelphone: '',
-          SuperviseUnit: '',
-          SuperviseOwner: '',
-          SuperviseTelphone: '',
-          QualityUnit: '',
-          QualityOwner: '',
-          QualityTelphone: '',
-          Remark: '',
-          IsDelete: '',
-          CreateOn: '',
-          CreateUserId: '',
-          CreateBy: '',
-          ModifiedOn: '',
-          ModifiedUserId: '',
-          ModifiedBy: '',
-          //缺少
-          SubPackage: '',
-          ContractType: ''
-
+          SupplierId:'',
+          SupplierName:'',
+          SumScore :0,
+          SumScore1:0,
+          SumScore2:0,
+          SumScore3:0,
+          SumScore4:0,
+          Conclusion:1,
+          Note:''
         },
 
         //下拉选择项
@@ -298,17 +158,34 @@
       }
     },
     created() {
-      this.serviceId = this.$route.params.opera;
-      this.getDictOptions();
-      console.log(this.serviceId);
-      if(this.serviceId != 'add' && this.serviceId>0) {
-        this.formData.Id = this.serviceId;
-        this.initDatas();
-      } else {
-        this.formData.Id = 0;
+      console.log('接受操作',this.$route.params)
+      this.operate  = this.$route.params.opera;
+      if(this.operate == 'add'){  // 新增进入
+        this.initPage(this.$route.query.item)
+      }else{ // 编辑进入
+
       }
+      
+      // this.getDictOptions();
+      // console.log(this.serviceId);
+      // if(this.serviceId != 'add' && this.serviceId>0) {
+      //   this.formData.Id = this.serviceId;
+      //   this.initDatas();
+      // } else {
+      //   this.formData.Id = 0;
+      // }
     },
     methods: {
+      initPage(item){
+        this.formData.SupplierId   = parseInt(item.SupplierId)
+        this.formData.SupplierName = item.SupplierName
+        this.formData.SumScore     = item.Score
+        this.formData.SumScore1    = item.Score1
+        this.formData.SumScore2    = item.Score2
+        this.formData.SumScore3    = item.Score3
+        this.formData.SumScore4    = item.Score4
+        this.formData.Conclusion   = item.Evaluate
+      },
       initDatas() {
         if(this.formData.Id) {
           api.getEntity(this.formData.Id, this.$axios).then(res => {
@@ -332,14 +209,11 @@
       saveEntity() {
         this.$refs['EntityForm'].validate((valid) => {
           if (valid) {
-            //this.formData.WellNo = this.$refs.selectWellNo.selectedLabel + '';
-
-            if (!this.formData.Id) {
+            if (this.operate == 'add') {
               this.addEntity();
             } else {
               this.updateEntity();
             }
-
           } else {
             return false
           }
@@ -350,6 +224,7 @@
         api.addEntity(this.formData, this.$axios).then(res => {
           if (res.data.code === 0) {
             //保存成功后,初始化数据,变成修改
+            this.operate = 'edit'
             this.formData.Id = res.data.item;
             this.initDatas();
             this.$message({

+ 26 - 42
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service-year/index.vue

@@ -12,9 +12,6 @@
           <i class="icon icon-table2"></i> 合同表
         </span>
         <span style="float: right;">
-          <router-link :to="'/oilcontract/contract-service-year/add/operation'">
-            <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">添加</el-button>
-          </router-link>
           <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">导入</el-button>
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
@@ -37,41 +34,18 @@
       <el-table size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
         <el-table-column label="操作" header-align="center" width="100" align="center" fixed>
           <template slot-scope="scope">
-            <router-link :to="'/oilsupplier/oilcontract/' + scope.row.Id + '/operation'">
-              <el-button type="text" title="编辑" size="small" icon="el-icon-edit"></el-button>
-            </router-link>
-
-            <el-popover placement="top" title="提示" v-model="scope.row.deleteConfirmFlag">
-              <el-alert
-                title=""
-                description="确认要删除吗?"
-                type="warning"
-                :closable="false">
-              </el-alert>
-              <br/>
-              <div style="text-align: right; margin: 0">
-                <el-button type="primary" size="mini" @click="deleteEntity(scope.row)">删除</el-button>
-              </div>
-              <el-button slot="reference" type="text" title="删除" style="margin-left:3px" size="small" @click="scope.row.deleteConfirmFlag = true">
-                <i class="el-icon-delete"></i>
-              </el-button>
-            </el-popover>
+              <el-button type="text" title="生成" size="small" icon="el-icon-edit" @click="onNavigateScore(scope.row)">生成</el-button>
           </template>
         </el-table-column>
-
         <el-table-column prop="SupplierName" header-align="center" label="服务商名称"></el-table-column>
-        <el-table-column prop="ContractNo" header-align="center" label="评价得分" width="120"></el-table-column>
+        <el-table-column prop="Score" header-align="center" label="评价得分" width="120"></el-table-column>
         <el-table-column label="评价内容及得分" header-align="center">
-          <el-table-column prop="ProjectPlace" header-align="center" label="项目管理(40分)" width="120"></el-table-column>
-          <el-table-column prop="ProjectOwner" header-align="center" label="HSE管理(30分)" width="120"></el-table-column>
-          <el-table-column prop="Telephone" header-align="center" label="合同履行(15分)" width="120"></el-table-column>
-          <el-table-column prop="ProjectType" header-align="center" label="企业诚信(15分)" width="120"></el-table-column>
-        </el-table-column>
-        <el-table-column label="评价结果" header-align="center">
-          <el-table-column prop="ProjectPlace" header-align="center" label="优秀" width="80"></el-table-column>
-          <el-table-column prop="ProjectOwner" header-align="center" label="合格" width="80"></el-table-column>
-          <el-table-column prop="Telephone" header-align="center" label="不合格" width="80"></el-table-column>
+          <el-table-column prop="Score1" header-align="center" label="项目管理(40分)" width="120"></el-table-column>
+          <el-table-column prop="Score2" header-align="center" label="HSE管理(30分)" width="120"></el-table-column>
+          <el-table-column prop="Score3" header-align="center" label="合同履行(15分)" width="120"></el-table-column>
+          <el-table-column prop="Score4" header-align="center" label="企业诚信(15分)" width="120"></el-table-column>
         </el-table-column>
+        <el-table-column prop="Evaluate" label="评价结果" header-align="center" />
       </el-table>
       <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
                      :page-sizes="[10, 15, 20, 25]" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
@@ -305,7 +279,7 @@
 </template>
 <script>
   import { mapGetters } from 'vuex';
-  import api from '@/api/oilcontract/contract';
+  import api from '@/api/oilcontract/contractSumScore';
 
   export default {
     computed: {
@@ -380,42 +354,42 @@
           },
 
           {
-            prop: "ContractNo",
+            prop: "Score",
             label: '评价得分',
             width: 100,
             sort: true
           },
 
           {
-            prop: "ProjectPlace",
+            prop: "Score1",
             label: '项目管理(40分)',
             width: 100,
             sort: true
           },
 
           {
-            prop: "ProjectOwner",
+            prop: "Score2",
             label: 'HSE管理(30分)',
             width: 100,
             sort: true
           },
 
           {
-            prop: "Telephone",
+            prop: "Score3",
             label: '合同履行(15分)',
             width: 100,
             sort: true
           },
 
           {
-            prop: "ProjectType",
+            prop: "Score4",
             label: '企业诚信(15分)',
             width: 100,
             sort: true
           },
 
           {
-            prop: "ContractMode",
+            prop: "Evaluate",
             label: '评价结果',
             width: 100,
             sort: true
@@ -450,7 +424,7 @@
         //查询条件
         Object.assign(params, this.searchForm)
         //访问接口
-        api.getList(myCreateOn.join(','), params, this.$axios).then(res => {
+        api.GetComputeList(myCreateOn.join(','), params, this.$axios).then(res => {
           this.entityList = res.data.items
           this.currentItemCount = res.data.currentItemCount
         }).catch(err => {
@@ -549,7 +523,17 @@
         var minute = date.getMinutes();
         minute = minute < 10 ? ('0' + minute) : minute;
         return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
-      }
+      },
+      //跳转评价
+      onNavigateScore(item){
+        console.log('跳转',item)
+        this.$router.push({
+          path:'/oilcontract/contract-service-year-check/add/operation',
+          query:{
+            item:item
+          }
+        })
+      },
     }
   }