Quellcode durchsuchen

加入房屋修改

wuxw vor 6 Jahren
Ursprung
Commit
47110e2fa5

+ 43 - 0
WebService/src/main/java/com/java110/web/components/room/RoomSelect2Component.java

@@ -0,0 +1,43 @@
+package com.java110.web.components.room;
+
+import com.java110.core.context.IPageData;
+import com.java110.web.smo.IFloorServiceSMO;
+import com.java110.web.smo.IRoomServiceSMO;
+import com.java110.web.smo.IUnitServiceSMO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Component;
+
+/**
+ * @ClassName RoomComponent
+ * @Description TODO 房屋组件
+ * @Author wuxw
+ * @Date 2019/5/7 23:40
+ * @Version 1.0
+ * add by wuxw 2019/5/7
+ **/
+@Component("roomSelect2")
+public class RoomSelect2Component {
+
+    @Autowired
+    private IRoomServiceSMO roomServiceSMOImpl;
+
+
+    /**
+     * 显示房屋信息
+     *
+     * @param pd 页面信息封装
+     * @return ResponseEntity对象
+     */
+    public ResponseEntity<String> listRoom(IPageData pd) {
+        return roomServiceSMOImpl.listRoom(pd);
+    }
+
+    public IRoomServiceSMO getRoomServiceSMOImpl() {
+        return roomServiceSMOImpl;
+    }
+
+    public void setRoomServiceSMOImpl(IRoomServiceSMO roomServiceSMOImpl) {
+        this.roomServiceSMOImpl = roomServiceSMOImpl;
+    }
+}

+ 5 - 2
WebService/src/main/resources/components/machinePackage/add-machine/addMachine.html

@@ -84,8 +84,11 @@
                              v-show="addMachineInfo.locationTypeCd == '3000'  ">
                             <label class="col-sm-2 col-form-label">归属房屋</label>
                             <div class="col-sm-10">
-                                <input v-model="addMachineInfo.authCode" type="text" placeholder="必填,请填写鉴权编码"
-                                       class="form-control">
+                                <vc:create name="roomSelect2"
+                                           parentModal="addMachineModel"
+                                           callBackListener="addMachine"
+                                           callBackFunction="notify"
+                                ></vc:create>
                             </div>
                         </div>
 

+ 4 - 0
WebService/src/main/resources/components/machinePackage/add-machine/addMachine.js

@@ -42,6 +42,10 @@
                 if (_param.hasOwnProperty("unitId")) {
                     vc.component.addMachineInfo.unitId = _param.unitId;
                 }
+
+                if(_param.hasOwnProperty("roomId")){
+                    vc.component.addMachineInfo.roomId = _param.roomId;
+                }
             });
         },
         methods: {

+ 5 - 0
WebService/src/main/resources/components/roomPackage/room-select2/roomSelect2.html

@@ -0,0 +1,5 @@
+<select class="form-control roomSelector">
+    <option value="">请选择房屋</option>
+
+
+</select>

+ 99 - 0
WebService/src/main/resources/components/roomPackage/room-select2/roomSelect2.js

@@ -0,0 +1,99 @@
+(function(vc){
+    vc.extends({
+        propTypes: {
+            parentModal:vc.propTypes.string,
+            callBackListener:vc.propTypes.string, //父组件名称
+            callBackFunction:vc.propTypes.string //父组件监听方法
+        },
+        data:{
+            roomSelect2Info:{
+                units:[],
+                floorId:'-1',
+                unitId:'-1',
+                roomId:'',
+                unitName:'',
+            }
+        },
+        watch:{
+            roomSelect2Info:{
+                deep: true,
+                handler:function(){
+                    vc.emit($props.callBackListener,$props.callBackFunction,vc.component.roomSelect2Info);
+                }
+            }
+        },
+        _initMethod:function(){
+                vc.component._initUnitSelect2();
+        },
+        _initEvent:function(){
+            //监听 modal 打开
+           /* $('#'+$props.parentModal).on('show.bs.modal', function () {
+                 vc.component._initUnitSelect2();
+            })*/
+           vc.on('roomSelect2', "transferUnit",function (_param) {
+                vc.copyObject(_param, vc.component.roomSelect2Info);
+           });
+        },
+        methods: {
+            _initUnitSelect2: function () {
+                console.log("调用_initRoomSelect2 方法");
+                $.fn.modal.Constructor.prototype.enforceFocus = function () {};
+                $.fn.select2.defaults.set('width', '100%');
+                $('.roomSelector').select2({
+                    placeholder: '必填,请选择房屋',
+                    ajax: {
+                        url: "/callComponent/roomSelect2/loadRooms",
+                        dataType: 'json',
+                        delay: 250,
+                        data: function (params) {
+                            console.log("param", params);
+                            var _term = "";
+                            if(params.hasOwnProperty("term")){
+                                _term = params.term;
+                            }
+                            return {
+                                roomNum: _term,
+                                page: 1,
+                                row:10,
+                                unitId:vc.component.roomSelect2Info.unitId,
+                                communityId:vc.getCurrentCommunity().communityId
+                            };
+                        },
+                        processResults: function (data) {
+                            console.log(data, vc.component._filterRoomData(data));
+                            return {
+                                results: vc.component._filterRoomData(data)
+                            };
+                        },
+                        cache: true
+                    }
+                });
+                $('.floorSelector').on("select2:select", function (evt) {
+                    //这里是选中触发的事件
+                    //evt.params.data 是选中项的信息
+                    console.log('select',evt);
+                    vc.component.roomSelect2Info.roomId = evt.params.data.id;
+                    vc.component.roomSelect2Info.roomNum = evt.params.data.text;
+                });
+
+                $('.floorSelector').on("select2:unselect", function (evt) {
+                    //这里是取消选中触发的事件
+                    //如配置allowClear: true后,触发
+                    console.log('unselect',evt)
+
+                });
+            },
+            _filterRoomData:function (_rooms) {
+                var _tmpRooms = [];
+                for (var i = 0; i < _rooms.length; i++) {
+                    var _tmpRoom = {
+                        id:_rooms[i].roomId,
+                        text:_rooms[i].roomNum
+                    };
+                    _tmpRooms.push(_tmpRoom);
+                }
+                return _tmpRooms;
+            }
+        }
+    });
+})(window.vc);

+ 2 - 1
WebService/src/main/resources/components/unitPackage/unit-select2/unitSelect2.js

@@ -9,7 +9,7 @@
             unitSelect2Info:{
                 units:[],
                 floorId:'-1',
-                unitId:'',
+                unitId:'-1',
                 unitNum:'',
                 unitName:'',
             }
@@ -19,6 +19,7 @@
                 deep: true,
                 handler:function(){
                     vc.emit($props.callBackListener,$props.callBackFunction,vc.component.unitSelect2Info);
+                    vc.emit('roomSelect2', "transferUnit" ,vc.component.floorSelect2Info);
                 }
             }
         },