2
3
فهرست منبع

增项物资类、基建类修改

ljm 6 سال پیش
والد
کامیت
521324935b

+ 7 - 0
src/dashoo.cn/backend/api/business/oilsupplier/goodsaptitudeclass/oilgoodsaptitudeclass.go

@@ -18,3 +18,10 @@ type OilGoodsAptitudeClass struct {
 	ModifiedUserId    int       `xorm:"INT(10)"`
 	ModifiedBy        string    `xorm:"VARCHAR(50)"`
 }
+
+type GoodsAptitudeClassList struct {
+	Id       int    `xorm:"not null pk autoincr INT(10)"`
+	Code     string `xorm:"not null default '' comment('编码') VARCHAR(8)"`
+	Name     string `xorm:"not null default '' comment('名称') VARCHAR(50)"`
+	ParentId int    `xorm:"not null default 0 comment('上级节点ID') INT(10)"`
+}

+ 38 - 0
src/dashoo.cn/backend/api/controllers/oilsupplier/goodsaptitudeclass.go

@@ -285,3 +285,41 @@ func (this *OilGoodsAptitudeClassController) DeleteEntity() {
 		this.ServeJSON()
 	}
 }
+
+// @Title get 获取物资类资质分类层级表
+// @Description get SampleType by token
+// @Success 200 {object} sampletype.SampleType
+// @router /getgoodsclasslist [get]
+func (this *OilGoodsAptitudeClassController) GetGoodsClassList() {
+
+	where := " DeletionStateCode = 0 "
+	var list []goodsaptitudeclass.GoodsAptitudeClassList
+	svc := goodsaptitudeclass.GetOilGoodsAptitudeClassService(utils.DBE)
+	svc.GetEntitysByWhere(OilGoodsAptitudeClassName, where, &list)
+	var datainfo DataInfo
+	datainfo.Items = list
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}
+
+// @Title 获取Code
+// @Description 根据Id获取Code
+// @Success 200 {object} technologyservice.TechnologyBusiness
+// @router /getcode/:id [get]
+func (this *OilGoodsAptitudeClassController) GetCodeById() {
+	Id := this.Ctx.Input.Param(":id")
+
+	where := " 1 = 1 "
+
+	if Id != "" {
+		where = where + " and Id = " + Id
+	}
+	var list []goodsaptitudeclass.GoodsAptitudeClassList
+	svc := goodsaptitudeclass.GetOilGoodsAptitudeClassService(utils.DBE)
+	svc.GetEntitysByWhere(OilGoodsAptitudeClassName, where, &list)
+
+	var datainfo DataInfo
+	datainfo.Items = list
+	this.Data["json"] = &datainfo
+	this.ServeJSON()
+}

+ 1 - 1
src/dashoo.cn/backend/api/controllers/oilsupplier/suppliercertappend.go

@@ -120,7 +120,7 @@ func (this *OilSupplierCertAppendController) GetSupplier() {
 
 	svc := suppliercertappend.GetOilSupplierCertAppendService(utils.DBE)
 	sqlStr := "SELECT b.Id AS SupplierId, a.Id AS SupplierCertId, b.SupplierName AS SupplierName FROM OilSupplierCert AS a LEFT JOIN OilSupplier AS b ON a.SupplierId = b.Id "
-	where := "WHERE a.SupplierTypeCode = " + Id + " AND  a.CreateUserId = " + this.User.Id
+	where := "WHERE b.Id is NOT NULL AND a.SupplierTypeCode = " + Id + " AND  a.CreateUserId = " + this.User.Id
 
 	sqlStr = sqlStr + where
 

+ 4 - 3
src/dashoo.cn/backend/api/controllers/oilsupplier/technologyservice.go

@@ -1,10 +1,11 @@
 package oilsupplier
 
 import (
-	"dashoo.cn/backend/api/business/items"
 	"encoding/json"
 	"time"
 
+	"dashoo.cn/backend/api/business/items"
+
 	"dashoo.cn/backend/api/business/baseUser"
 	"dashoo.cn/business/userRole"
 
@@ -380,8 +381,8 @@ func (this *OilTechnologyServiceController) NeedFileList() {
 	this.ServeJSON()
 }
 
-// @Title 获取
-// @Description 根据Id获取实体
+// @Title 获取Code
+// @Description 根据Id获取Code
 // @Success 200 {object} technologyservice.TechnologyBusiness
 // @router /getcode/:id [get]
 func (this *OilTechnologyServiceController) GetCodeById() {

+ 88 - 66
src/dashoo.cn/frontend_web/src/pages/oilsupplier/supplierappend/_opera/basisdataopera.vue

@@ -43,11 +43,6 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <!-- <el-col :span="12">
-                <el-form-item label="推荐单位编码" prop="RecUnitId">
-                  <el-input v-model="formData.RecUnitId" placeholder="请输入推荐单位编码"></el-input>
-                </el-form-item>
-              </el-col> -->
               <el-col :span="24">
                 <el-form-item label="备注" prop="Remark">
                   <el-input type="textarea" v-model="formData.Remark" placeholder="请输入"></el-input>
@@ -81,14 +76,14 @@
       </div>
     </el-card>
     <!-- 增项分类添加、修改 -->
-    <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="800px">
+    <el-dialog :title="dialogTitle" :visible.sync="dialogVisible">
       <el-form label-width="150px" ref="dialogFormData" :rules="sortEntityFormRules" :model="dialogFormData" >
         <el-row>
           <el-col :span="12">
-            <el-form-item label="分类名称" prop="checkSelectedOptList">
-              <el-cascader ref="cascader" :options="optionsList" style="width:100%" :props="orgtreeprops" change-on-select :show-all-levels="false" 
-                v-model="selectedOptList" @change="getCode" placeholder="请选择分类">
-              </el-cascader>
+            <el-form-item label="分类名称" prop="Name">
+              <el-input placeholder="请选择分类" v-model="dialogFormData.Name" style="width:100%">
+                <el-button type="primary" style="width:30%" @click="basisDialog = true" slot="append">选择</el-button>
+              </el-input>
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -109,6 +104,34 @@
       </span>
     </el-dialog>
 
+    <el-dialog title="基建类业务列表" :visible.sync="basisDialog" top="5vh" style="width:1000px">
+      <span style="float: right;">
+        <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="seachData()">查询
+        </el-button>
+        <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="basisDialog = false">
+          取消</el-button>
+      </span>
+      <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
+        <el-form-item label="分类名称">
+          <el-input size="mini" style="width: 165px;" v-model="keyword" placeholder="请输入分类名称"></el-input>
+        </el-form-item>
+      </el-form>
+      <el-table :data="basisList" border>
+        <el-table-column label="操作" width="70" align="center" fixed>
+          <template slot-scope="scope">
+            <el-button type="text" size="small" @click="getChooseCode(scope.row)">选择</el-button>
+          </template>
+        </el-table-column>
+        <el-table-column prop="Code" label="分类编码" show-overflow-tooltip></el-table-column>
+        <el-table-column prop="Name" label="分类名称" show-overflow-tooltip></el-table-column>
+        <el-table-column prop="Remark" label="备注" show-overflow-tooltip></el-table-column>
+      </el-table>
+      <el-pagination @size-change="dialogHandleSizeChange" @current-change="dialogHandleCurrentChange" :current-page="dialogCurrentPage"
+        :page-sizes="[10, 15, 20, 25]" :page-size="dialogSize" layout="total, sizes, prev, pager, next, jumper"
+        :total="dialogCurrentItemCount">
+      </el-pagination>
+    </el-dialog>
+
   </div>
 </template>
 
@@ -135,13 +158,6 @@
           callback()
         }
       }
-      var CheckSelectedOption2 = (rule, value, callback) => {
-        if (this.selectedOptList && this.selectedOptList.length < 1) {
-          callback(new Error('请选择增项'))
-        } else {
-          callback()
-        }
-      }
       var CheckSelectedOption3 = (rule, value, callback) => {
         if (this.supplierOptions === '') {
           callback(new Error('请选择供应方公司'))
@@ -154,7 +170,6 @@
         supplierOptions: '', //已选择的供应方公司列表
         // serviceType: '', //服务类型()
         optionsList: [], //增项分类层级列表
-        selectedOptList: [], //已选择的增项分类列表
         orgtreeprops: {
           value: 'id',
           label: 'Name',
@@ -177,8 +192,8 @@
         //增项信息表
         formData: {
           Id: '',
-          SupplierId: 1,
-          SupplierCertId: 1,
+          SupplierId: 0,
+          SupplierCertId: 0,
           RecUnitFlag: '',//推荐单位的级联Id标记
           RecUnitId: '', //推荐单位编码
           RecUnitName: '', //推荐单位名称
@@ -189,8 +204,8 @@
         dialogTitle: '',
         dialogFormData: {
           Id: '',
-          SupplierId: 1,//供方表ID
-          SupplierCertId: 1,//供方证书表ID
+          SupplierId: 0,//供方表ID
+          SupplierCertId: 0,//供方证书表ID
           SupplierCertAppendId: '',//增项信息表ID
           SubClassId: 2,//分类表主键(物资类或基建类或技术服务类)
           SortFlag: '',//分类标记
@@ -224,14 +239,21 @@
         },
         //增项分类表单规则
         sortEntityFormRules: {
-          checkSelectedOptList: [{
+          Name: [{
             required: true,
-            validator: CheckSelectedOption2,
+            message: '请选择增项分类',
             trigger: 'blur'
           }],
         },
         Id: '', //传的参数
         editFlag: '', //编辑操作标记
+        basisDialog: false,
+        keyword: '', //查询关键字
+        basisList: [], //基建类的增项分类列表
+        //增项分类dialog分页参数
+        dialogSize: 10,
+        dialogCurrentPage: 1,
+        dialogCurrentItemCount: 0,
       }
     },
     created() {
@@ -244,7 +266,7 @@
         this.getSortList()
       }
       this.getOrgTreeList() //获取推荐单位层级列表
-      this.getTechTreeList() //获取技术服务类层级列表
+      this.getBasisList() //获取基建类层级列表
       this.getSupplierList() //获取供应方公司列表
     },
     methods: {
@@ -278,18 +300,40 @@
           })
       },
 
-      //获取技术服务类层级列表
-      getTechTreeList() {
+      //获取基建类层级列表
+      getBasisList() {
         let _this = this
-        this.$axios.get('technologyservice/businesslist', {})
+        const params = {
+          keyword: this.keyword,
+          _currentPage: this.dialogCurrentPage,
+          _size: this.dialogSize,
+        }
+        this.$axios.get('basisbuild/basiclist', {
+            params
+          })
           .then(res => {
-            _this.optionsList = window.toolfun_gettreejson(res.data.items, 'Id', 'ParentId', 'Id,Name')
+            _this.basisList = res.data.items
+            _this.dialogCurrentItemCount = res.data.currentItemCount
           })
           .catch(err => {
             console.error(err)
           })
       },
 
+      //选择具体的分类
+      getChooseCode(val) {
+        this.dialogFormData.SortFlag = val.Id.toString() //记录OilBasisBuild表的Id
+        this.dialogFormData.Code = val.Code
+        this.dialogFormData.Name = val.Name
+        this.basisDialog = false
+      },
+
+      //根据条件查找基建类层级列表
+      seachData() {
+        this.dialogCurrentPage = -1
+        this.getBasisList()
+      },
+
       //获取SupplierId和SupplierCertId
       getInfo(vId) {//这个vId也就是value值
         let obj = {}
@@ -300,25 +344,6 @@
         this.formData.SupplierCertId = parseInt(obj.SupplierCertId)
       },
 
-      //获取分类级联Id
-      getCode(item) {
-        let sortFlagStr = item.toString()
-        this.dialogFormData.SortFlag = sortFlagStr
-        this.getCodeById(item[item.length-1]) //根据分类Id获取Code
-      },
-
-      //根据分类Id获取Code
-      getCodeById(Id) {
-        let _this = this
-        this.$axios.get('technologyservice/getcode/' + Id, {})
-          .then(res => {
-            _this.dialogFormData.Code = res.data.items[0].Code
-          })
-          .catch(err => {
-            console.error(err)
-          })
-      },
-
       //获取推荐单位级联Id
       getCode2(item) {
         let codeStr = item.toString()
@@ -434,10 +459,10 @@
         if(this.checkAppendSave()) {
           _this.dialogTitle = '添加'
           _this.dialogVisible = true
-          _this.selectedOptList = [] //置空,防止先修改再添加时的已选分类信息保留
           _this.dialogFormData.Id = ''
           _this.dialogFormData.SortFlag = ''
           _this.dialogFormData.Code = ''
+          _this.dialogFormData.Name = ''
           _this.dialogFormData.Remark = ''
         }
       },
@@ -448,15 +473,6 @@
         _this.dialogTitle = '编辑'
         _this.dialogVisible = true
         _this.dialogFormData = row
-        //显示原增项结构
-        if (_this.dialogFormData.SortFlag != null) {
-          let arr = _this.dialogFormData.SortFlag.split(',')
-          let arr2 = []
-          for (let i = 0; i < arr.length; i++) {
-              arr2.push(parseInt(arr[i]))
-          }
-          _this.selectedOptList = arr2
-        }
       },
 
       //取消
@@ -471,16 +487,13 @@
           if (valid) {
             let _this = this
             if (_this.dialogTitle == '添加') {
-              let arr = []
-              arr = _this.$refs['cascader'].currentLabels //_this.$refs['cascader'].currentLabels获取当前级联选项的id对应的value
-              _this.dialogFormData.Name = arr[arr.length - 1]
+              _this.dialogFormData.SupplierId = _this.formData.SupplierId
+              _this.dialogFormData.SupplierCertId = _this.formData.SupplierCertId
               _this.dialogFormData.SupplierCertAppendId = parseInt(_this.dialogFormData.SupplierCertAppendId)
               _this.addSortAppend()
             }
             if (_this.dialogTitle == '编辑') {
               let arr = []
-              arr = _this.$refs['cascader'].currentLabels
-              _this.dialogFormData.Name = arr[arr.length - 1]
               api.updateEntity(_this.dialogFormData.Id, _this.dialogFormData, _this.$axios).then(res => {
                 if (res.data.code === 0) {
                   this.$message({
@@ -583,17 +596,26 @@
           this.Column.Order = 'desc'
         }
         this.Column.Prop = column.prop
-        this.initData()
       },
       //分页功能
       handleCurrentChange(value) {
         this.currentPage = value
-        this.initData()
+        this.getSortList()
       },
       handleSizeChange(value) {
         this.size = value
         this.currentPage = 1
-        this.initData()
+        this.getSortList()
+      },
+      //增项分类dialog分页功能
+      dialogHandleSizeChange(value) {
+        this.dialogSize = value
+        this.dialogCurrentPage = 1
+        this.getBasisList()
+      },
+      dialogHandleCurrentChange(value) {
+        this.dialogCurrentPage = value
+        this.getBasisList()
       },
 
       jstimehandle(val) {

+ 27 - 26
src/dashoo.cn/frontend_web/src/pages/oilsupplier/supplierappend/_opera/goodsdataopera.vue

@@ -81,12 +81,12 @@
       </div>
     </el-card>
     <!-- 增项分类添加、修改 -->
-    <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="800px">
+    <el-dialog :title="dialogTitle" :visible.sync="dialogVisible">
       <el-form label-width="150px" ref="dialogFormData" :rules="sortEntityFormRules" :model="dialogFormData" >
         <el-row>
           <el-col :span="12">
             <el-form-item label="分类名称" prop="checkSelectedOptList">
-              <el-cascader ref="cascader" :options="optionsList" style="width:100%" :props="orgtreeprops" change-on-select :show-all-levels="false" 
+              <el-cascader ref="cascader" :options="optionsList" style="width:100%" :props="goodsProps" change-on-select :show-all-levels="false" 
                 v-model="selectedOptList" @change="getCode" placeholder="请选择分类">
               </el-cascader>
             </el-form-item>
@@ -155,7 +155,7 @@
         // serviceType: '', //服务类型()
         optionsList: [], //增项分类层级列表
         selectedOptList: [], //已选择的增项分类列表
-        orgtreeprops: {
+        goodsProps: {
           value: 'id',
           label: 'Name',
           children: 'children'
@@ -177,8 +177,8 @@
         //增项信息表
         formData: {
           Id: '',
-          SupplierId: 1,
-          SupplierCertId: 1,
+          SupplierId: 0,
+          SupplierCertId: 0,
           RecUnitFlag: '',//推荐单位的级联Id标记
           RecUnitId: '', //推荐单位编码
           RecUnitName: '', //推荐单位名称
@@ -189,10 +189,10 @@
         dialogTitle: '',
         dialogFormData: {
           Id: '',
-          SupplierId: 1,//供方表ID
-          SupplierCertId: 1,//供方证书表ID
+          SupplierId: 0,//供方表ID
+          SupplierCertId: 0,//供方证书表ID
           SupplierCertAppendId: '',//增项信息表ID
-          SubClassId: 2,//分类表主键(物资类或基建类或技术服务类)
+          SubClassId: 1,//分类表主键(物资类或基建类或技术服务类)
           SortFlag: '',//分类标记
           Code: '',//分类编码
           Name: '',//分类名称
@@ -244,7 +244,7 @@
         this.getSortList()
       }
       this.getOrgTreeList() //获取推荐单位层级列表
-      this.getTechTreeList() //获取技术服务类层级列表
+      this.getGoodsTreeList() //获取物资类层级列表
       this.getSupplierList() //获取供应方公司列表
     },
     methods: {
@@ -278,10 +278,10 @@
           })
       },
 
-      //获取技术服务类层级列表
-      getTechTreeList() {
+      //获取物资类层级列表
+      getGoodsTreeList() {
         let _this = this
-        this.$axios.get('technologyservice/businesslist', {})
+        this.$axios.get('goodsaptitudeclass/getgoodsclasslist', {})
           .then(res => {
             _this.optionsList = window.toolfun_gettreejson(res.data.items, 'Id', 'ParentId', 'Id,Name')
           })
@@ -290,16 +290,6 @@
           })
       },
 
-      //获取SupplierId和SupplierCertId
-      getInfo(vId) {//这个vId也就是value值
-        let obj = {}
-        obj = this.supplierList.find((item)=>{
-          return item.SupplierId === vId;//筛选出匹配数据
-        })
-        this.formData.SupplierId = parseInt(obj.SupplierId)
-        this.formData.SupplierCertId = parseInt(obj.SupplierCertId)
-      },
-
       //获取分类级联Id
       getCode(item) {
         let sortFlagStr = item.toString()
@@ -310,7 +300,7 @@
       //根据分类Id获取Code
       getCodeById(Id) {
         let _this = this
-        this.$axios.get('technologyservice/getcode/' + Id, {})
+        this.$axios.get('goodsaptitudeclass/getcode/' + Id, {})
           .then(res => {
             _this.dialogFormData.Code = res.data.items[0].Code
           })
@@ -319,6 +309,16 @@
           })
       },
 
+      //获取SupplierId和SupplierCertId
+      getInfo(vId) {//这个vId也就是value值
+        let obj = {}
+        obj = this.supplierList.find((item)=>{
+          return item.SupplierId === vId;//筛选出匹配数据
+        })
+        this.formData.SupplierId = parseInt(obj.SupplierId)
+        this.formData.SupplierCertId = parseInt(obj.SupplierCertId)
+      },
+
       //获取推荐单位级联Id
       getCode2(item) {
         let codeStr = item.toString()
@@ -474,6 +474,8 @@
               let arr = []
               arr = _this.$refs['cascader'].currentLabels //_this.$refs['cascader'].currentLabels获取当前级联选项的id对应的value
               _this.dialogFormData.Name = arr[arr.length - 1]
+              _this.dialogFormData.SupplierId = _this.formData.SupplierId
+              _this.dialogFormData.SupplierCertId = _this.formData.SupplierCertId
               _this.dialogFormData.SupplierCertAppendId = parseInt(_this.dialogFormData.SupplierCertAppendId)
               _this.addSortAppend()
             }
@@ -583,17 +585,16 @@
           this.Column.Order = 'desc'
         }
         this.Column.Prop = column.prop
-        this.initData()
       },
       //分页功能
       handleCurrentChange(value) {
         this.currentPage = value
-        this.initData()
+        this.getSortList()
       },
       handleSizeChange(value) {
         this.size = value
         this.currentPage = 1
-        this.initData()
+        this.getSortList()
       },
 
       jstimehandle(val) {

+ 10 - 9
src/dashoo.cn/frontend_web/src/pages/oilsupplier/supplierappend/_opera/techdataopera.vue

@@ -82,7 +82,7 @@
       </div>
     </el-card>
     <!-- 增项分类添加、修改 -->
-    <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="800px">
+    <el-dialog :title="dialogTitle" :visible.sync="dialogVisible">
       <el-form label-width="150px" ref="dialogFormData" :rules="sortEntityFormRules" :model="dialogFormData" >
         <el-row>
           <el-col :span="12">
@@ -179,8 +179,8 @@
         //增项信息表
         formData: {
           Id: '',
-          SupplierId: 1,
-          SupplierCertId: 1,
+          SupplierId: 0,
+          SupplierCertId: 0,
           RecUnitFlag: '',//推荐单位的级联Id标记
           RecUnitId: '', //推荐单位编码
           RecUnitName: '', //推荐单位名称
@@ -191,10 +191,10 @@
         dialogTitle: '',
         dialogFormData: {
           Id: '',
-          SupplierId: 1,//供方表ID
-          SupplierCertId: 1,//供方证书表ID
+          SupplierId: 0,//供方表ID
+          SupplierCertId: 0,//供方证书表ID
           SupplierCertAppendId: '',//增项信息表ID
-          SubClassId: 2,//分类表主键(物资类或基建类或技术服务类)
+          SubClassId: 3,//分类表主键(物资类或基建类或技术服务类)
           SortFlag: '',//分类标记
           Code: '',//分类编码
           Name: '',//分类名称
@@ -494,6 +494,8 @@
               let arr = []
               arr = _this.$refs['cascader'].currentLabels //_this.$refs['cascader'].currentLabels获取当前级联选项的id对应的value
               _this.dialogFormData.Name = arr[arr.length - 1]
+              _this.dialogFormData.SupplierId = _this.formData.SupplierId
+              _this.dialogFormData.SupplierCertId = _this.formData.SupplierCertId
               _this.dialogFormData.SupplierCertAppendId = parseInt(_this.dialogFormData.SupplierCertAppendId)
               _this.addSortAppend()
             }
@@ -603,17 +605,16 @@
           this.Column.Order = 'desc'
         }
         this.Column.Prop = column.prop
-        this.initData()
       },
       //分页功能
       handleCurrentChange(value) {
         this.currentPage = value
-        this.initData()
+        this.getSortList()
       },
       handleSizeChange(value) {
         this.size = value
         this.currentPage = 1
-        this.initData()
+        this.getSortList()
       },
 
       jstimehandle(val) {