Procházet zdrojové kódy

添加物资类准入范围修改

shiyi před 6 roky
rodič
revize
44fd8066e8

+ 19 - 9
src/dashoo.cn/backend/api/controllers/oilsupplier/goodsaptitude.go

@@ -392,16 +392,26 @@ func (this *OilGoodsAptitudeController) DeleteEntity() {
 // @Title get 业务列表
 // @Description get SampleType by token
 // @Success 200 {object} sampletype.SampleType
-// @router /goodsparentlist [get]
+// @router /goodsparentlist/:name [get]
 func (this *OilGoodsAptitudeController) GoodsParentList() {
-	svc := goodsaptitude.GetOilGoodsAptitudeService(utils.DBE)
-	where := " ParentId = 0 and DeletionStateCode = 0 "
-	var list []goodsaptitude.GoodsBusiness
-	list = svc.GetGoodsList(OilGoodsAptitudeClassName, where)
-	var datainfo DataInfo
-	datainfo.Items = list
-	this.Data["json"] = &datainfo
-	this.ServeJSON()
+	Name := this.Ctx.Input.Param(":name")
+	if Name != ""{
+		svc := goodsaptitude.GetOilGoodsAptitudeService(utils.DBE)
+		where1 := "1=1"
+		where1 += " AND Name LIKE '%" + Name + "%' OR Code LIKE '%" + Name + "%' "
+
+		sqlStr := "SELECT Id, Code, Name, concat(Code, '  ', Name) as CodeName, ParentId FROM OilGoodsAptitudeClass " +
+				  "WHERE " + where1 + " AND DeletionStateCode = 0"
+		list, _ := svc.DBE.QueryString(sqlStr)
+		/*
+		sql := "SELECT Id, Code, Name, concat(Code, '  ', Name) as CodeName, ParentId FROM OilGoodsAptitudeClass " +
+				 "WHERE DeletionStateCode = 0 AND " +  where1 + " OR Id = (" + sqlStr + ")" +" ORDER BY Code"
+		list, _ := svc.DBE.QueryString(sql)*/
+		var datainfo DataInfo
+		datainfo.Items = list
+		this.Data["json"] = &datainfo
+		this.ServeJSON()
+	}
 }
 
 // @Title get 获取子类

+ 51 - 21
src/dashoo.cn/frontend_web/src/components/oilsupplier/goodslist.vue

@@ -34,14 +34,24 @@
     <el-dialog title="物资类业务列表" :visible.sync="goodsDialog" top="5vh">
       <el-row style="margin-top: -10px">
         <el-col :span="12">
-          <el-input v-model="filterText" placeholder="请输入名称或代码" size="mini" style="width: 250px;"></el-input>
-          <!-- <el-button style="float: right;" type="primary" size="mini" @click="getorgtreelist()">查询</el-button> -->
+          <el-input v-if="!switchstatus" v-model="filterText" placeholder="请输入名称或代码" size="mini" style="width: 250px;"></el-input>
+          <el-input v-if="switchstatus" v-model="searchText" placeholder="请输入名称或代码" size="mini" style="width: 250px;"></el-input>
+          <el-button style="float: right;" type="primary" size="mini"
+                     @click="getsectreelist()" :disabled="!switchstatus">查询</el-button>
+          <el-switch v-model="switchstatus" size="mini"></el-switch>
         </el-col>
       </el-row>
       <el-row :gutter="20" style="height: calc(100vh - 450px); overflow: auto; margin-top:20px">
         <el-col :span="20">
-          <el-tree highlight-current :expand-on-click-node="true" node-key="CodeName" :data="orgtreelist"
-            :props="orgtreeprops" ref="orgmanagetree" show-checkbox lazy :load="getChildrens" :filter-node-method="filterNode">
+          <el-tree v-show="!switchstatus" highlight-current :expand-on-click-node="true" node-key="CodeName"
+                   :data="orgtreelist" :props="orgtreeprops" ref="orgmanagetree" check-on-click-node
+                   show-checkbox lazy :load="getChildrens" :filter-node-method="filterNode">
+          </el-tree>
+          <el-tree v-show="switchstatus" ref="secmanagetree"
+                   :data="sectreelist"
+                   show-checkbox check-on-click-node
+                   node-key="CodeName"
+                   :props="sectreeprops">
           </el-tree>
         </el-col>
       </el-row>
@@ -99,17 +109,26 @@
 
         goodsList: [],
         goodsDialog: false,
+        switchstatus: false,
         orgtreelist: [],
+        sectreelist: [],
         orgtreeprops: {
           value: 'Id',
           label: 'CodeName',
           children: 'children',
           isLeaf: 'Leaf'
+          disabled: 'disabled'
+        },
+        sectreeprops: {
+          children: 'children',
+          label: 'CodeName',
+          disabled: 'disabled'
         },
         checkList: [],
         Remark: '',
 
         filterText: '',
+        searchText: '',
         visible: false,
         selfVisible: this.visible, // 避免vue双向绑定警告
         currentPage: 1, // 分页
@@ -154,14 +173,21 @@
           })
       },
       getChecklist() {
-        let val = this.$refs.orgmanagetree.getCheckedNodes()
+        let val1 = this.$refs.orgmanagetree.getCheckedNodes()
+        let val2 = this.$refs.secmanagetree.getCheckedNodes()
         this.checkList = []
-        for (var i = 0; i < val.length; i++) {
-          if (val[i].Code.length == 8) {
-            this.checkList.push(val[i])
+        for (var i = 0; i < val1.length; i++) {
+          if (val1[i].Code.length == 8) {
+            this.checkList.push(val1[i])
+          }
+        }
+        for (var i = 0; i < val2.length; i++){
+          if (val2[i].Code.length == 8) {
+            this.checkList.push(val2[i])
           }
         }
         this.addBusiness()
+        this.switchstatus = false
       },
       addBusiness() {
         let _this = this
@@ -202,6 +228,10 @@
           .catch(err => {
             console.error(err)
           })
+        this.$refs.orgmanagetree.setCheckedKeys([])
+        this.$refs.secmanagetree.setCheckedKeys([])
+        this.filterText = ''
+        this.searchText = ''
       },
       deletedata(val) {
         if(val!=null&&val!=""){
@@ -241,19 +271,17 @@
         //this.getorgtreelist()
         this.goodsDialog = true
       },
-      /*getorgtreelist() {
+      getsectreelist() {
         let _this = this
-        this.$axios.get('goodsaptitude/goodsparentlist', {})
+        let name = _this.searchText
+        this.$axios.get('goodsaptitude/goodsparentlist/' + name)
           .then(res => {
-            _this.orgtreelist = window.toolfun_gettreejson(res.data.items, 'Id', 'ParentId', 'Id,Code,Name,CodeName')
-            _this.orgtreelist.forEach((item, index) => {
-              _this.$set(this.orgtreelist[index], 'children', [])
-            })
+            _this.sectreelist = window.toolfun_gettreejson(res.data.items, 'Id', 'ParentId', 'Id,Code,Name,CodeName')
           })
           .catch(err => {
             console.error(err)
           })
-      },*/
+      },
       //获取下一级所有分类
       getChildrens(val, resolve) {
         let Id = 0
@@ -269,6 +297,9 @@
               return resolve([])
             }
             for (let idx in res.data.items) {
+              if (res.data.items[idx].Code.length <= 4) {
+                res.data.items[idx].disabled = true
+              }
               res.data.items[idx].Leaf = res.data.items[idx].Leaf === '1' ? true : false
             }
             return resolve(res.data.items)
@@ -277,23 +308,22 @@
             console.error(err)
           })
       },
-      filterNode(value, data) {
-        if (!value) return true;
-        return data.CodeName.indexOf(value) !== -1;
+      filterNode (value, data) {
+        if (!value) return true
+        return data.CodeName.indexOf(value) !== -1
       },
 
-      handleSizeChange(value) {
+      handleSizeChange (value) {
         this.size = value
         this.currentPage = 1
         this.initData()
       },
-      handleCurrentChange(value) {
+      handleCurrentChange (value) {
         this.currentPage = value
         this.initData()
       },
     }
   }
-
 </script>
 
 <style>