mrzcc
2020-02-17 8a7698a2d873bdcd6acf076d50a3621b6b6cbc09
巡检计划页面
12个文件已添加
1307 ■■■■■ 已修改文件
WebService/src/main/resources/components/inspectionPlanPackage/add-inspectionPlan/addInspectionPlan.html 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/add-inspectionPlan/addInspectionPlan.js 253 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/choose-inspectionPlan/chooseInspectionPlan.html 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/choose-inspectionPlan/chooseInspectionPlan.js 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/delete-inspectionPlan/deleteInspectionPlan.html 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/delete-inspectionPlan/deleteInspectionPlan.js 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/edit-inspectionPlan/editInspectionPlan.html 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/edit-inspectionPlan/editInspectionPlan.js 245 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/inspectionPlan-manage/inspectionPlanManage.html 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/inspectionPlan-manage/inspectionPlanManage.js 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/view-inspectionPlan-info/viewInspectionPlanInfo.html 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/view-inspectionPlan-info/viewInspectionPlanInfo.js 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebService/src/main/resources/components/inspectionPlanPackage/add-inspectionPlan/addInspectionPlan.html
New file
@@ -0,0 +1,121 @@
<div id="addInspectionPlanModel" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
     aria-hidden="true">
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            <div class="modal-body">
                <h3 class="m-t-none m-b ">添加巡检计划</h3>
                <div class="ibox-content">
                    <div>
                        <div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">计划名称</label>
                                <div class="col-sm-10">
                                    <input v-model="addInspectionPlanInfo.inspectionPlanName" type="text"
                                           placeholder="必填,请填写计划名称" class="form-control">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">巡检路线</label>
                                <div class="col-sm-10">
                                    <input v-model="addInspectionPlanInfo.inspectionRouteId" type="text"
                                           placeholder="必填,请填写巡检路线" class="form-control">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">执行周期</label>
                                <div class="col-sm-10">
                                    <select class="custom-select" v-model="addInspectionPlanInfo.inspectionPlanPeriod">
                                        <option selected disabled value="">必填,请选择执行周期</option>
                                        <option v-for="(item,index) in addInspectionPlanInfo.inspectionPlanPeriods" :key="index"
                                                v-bind:value="item.statusCd">{{item.name}}
                                        </option>
                                    </select>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">执行人员</label>
                                <div class="col-sm-3">
                                    <vc:create name="orgSelect2"
                                               parentModal="addInspectionPlanModel"
                                               callBackListener="addInspectionPlanInfo"
                                               callBackFunction="notify"
                                               namespace="addInspectionPlan"
                                    ></vc:create>
                                </div>
                                <div class="col-sm-3">
                                    <vc:create name="departmentSelect2"
                                               parentModal="addInspectionPlanModel"
                                               callBackListener="addInspectionPlanInfo"
                                               callBackFunction="notify"
                                               namespace="addInspectionPlan"
                                    ></vc:create>
                                </div>
                                <div class="col-sm-3">
                                    <vc:create name="staffSelect2"
                                               parentModal="addInspectionPlanModel"
                                               callBackListener="addInspectionPlanInfo"
                                               callBackFunction="notify"
                                               namespace="addInspectionPlan"
                                    ></vc:create>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">开始时间</label>
                                <div class="col-sm-10">
                                    <input v-model="addInspectionPlanInfo.startTime" type="text"
                                           placeholder="必填,请填写开始时间" class="form-control addInspectionPlanStartTime">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">结束时间</label>
                                <div class="col-sm-10">
                                    <input v-model="addInspectionPlanInfo.endTime" type="text" placeholder="必填,请填写结束时间"
                                           class="form-control addInspectionPlanEndTime">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">签到方式</label>
                                <div class="col-sm-10">
                                    <select class="custom-select" v-model="addInspectionPlanInfo.signType">
                                        <option selected disabled value="">必填,请选择签到方式</option>
                                        <option v-for="(item,index) in addInspectionPlanInfo.signTypes" :key="index"
                                                v-bind:value="item.statusCd">{{item.name}}
                                        </option>
                                    </select>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">状态</label>
                                <div class="col-sm-10">
                                    <select class="custom-select" v-model="addInspectionPlanInfo.state">
                                        <option selected disabled value="">必填,请选择状态</option>
                                        <option v-for="(item,index) in addInspectionPlanInfo.states" :key="index"
                                                v-bind:value="item.statusCd">{{item.name}}
                                        </option>
                                    </select>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">备注</label>
                                <div class="col-sm-10">
                                    <textarea v-model="addInspectionPlanInfo.remark" type="text" placeholder="选填,请填写备注"
                                              class="form-control">
                                    </textarea>
                                </div>
                            </div>
                            <div class="ibox-content">
                                <button class="btn btn-primary float-right" type="button"
                                        v-on:click="saveInspectionPlanInfo()"><i class="fa fa-check"></i>&nbsp;保存
                                </button>
                                <button type="button" class="btn btn-warning float-right" style="margin-right:20px;"
                                        data-dismiss="modal">取消
                                </button>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
WebService/src/main/resources/components/inspectionPlanPackage/add-inspectionPlan/addInspectionPlan.js
New file
@@ -0,0 +1,253 @@
(function (vc) {
    vc.extends({
        propTypes: {
            callBackListener: vc.propTypes.string, //父组件名称
            callBackFunction: vc.propTypes.string //父组件监听方法
        },
        data: {
            addInspectionPlanInfo: {
                inspectionPlanId: '',
                inspectionPlanName: '',
                inspectionRouteId: '',
                inspectionPlanPeriod:'',
                inspectionPlanPeriods:[],
                staffId: '',
                staffName:'',
                startTime: '',
                endTime: '',
                signType:'',
                signTypes:[],
                state:'',
                states:[],
                remark: '',
            }
        },
        _initMethod: function () {
            vc.component._initAddInspectionPlanDateInfo();
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                console.log("收到字典参数:"+_data);
                vc.component.addInspectionPlanInfo.inspectionPlanPeriods = _data;
            });
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                vc.component.addInspectionPlanInfo.states = _data;
            });
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                vc.component.addInspectionPlanInfo.signTypes = _data;
            });
        },
        _initEvent: function () {
            vc.on('addInspectionPlan', 'openAddInspectionPlanModal', function () {
                $('#addInspectionPlanModel').modal('show');
            });
            vc.on("addInspectionPlanInfo", "notify", function (_param) {
                if (_param.hasOwnProperty("staffId")) {
                    vc.component.addInspectionPlanInfo.staffId = _param.staffId;
                    vc.component.addInspectionPlanInfo.staffName = _param.staffName;
                }
            });
        },
        methods: {
            addInspectionPlanValidate() {
                return vc.validate.validate({
                    addInspectionPlanInfo: vc.component.addInspectionPlanInfo
                }, {
                    'addInspectionPlanInfo.inspectionPlanName': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "计划名称不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,100",
                            errInfo: "巡检计划名称不能超过100位"
                        },
                    ],
                    'addInspectionPlanInfo.inspectionRouteId': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "巡检路线不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,30",
                            errInfo: "巡检路线不能超过30位"
                        },
                    ],
                    'addInspectionPlanInfo.inspectionPlanPeriod': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "执行周期不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,12",
                            errInfo: "执行周期格式错误"
                        },
                    ],
                    'addInspectionPlanInfo.staffId': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "执行人员不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,30",
                            errInfo: "执行人员不能超过30位"
                        },
                    ],
                    'addInspectionPlanInfo.startTime': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "开始时间不能为空"
                        },
                        {
                            limit: "dateTime",
                            param: "",
                            errInfo: "计计划开始时间不是有效的时间格式"
                        },
                    ],
                    'addInspectionPlanInfo.endTime': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "结束时间不能为空"
                        },
                        {
                            limit: "dateTime",
                            param: "",
                            errInfo: "计划结束时间不是有效的时间格式"
                        },
                    ],
                    'addInspectionPlanInfo.signType': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "签到方式不能为空"
                        },
                        {
                            limit: "num",
                            param: "",
                            errInfo: "签到方式格式错误"
                        },
                    ],
                    'addInspectionPlanInfo.state': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "状态不能为空"
                        },
                        {
                            limit: "num",
                            param: "",
                            errInfo: "签到方式格式错误"
                        },
                    ],
                    'addInspectionPlanInfo.remark': [
                        {
                            limit: "maxLength",
                            param: "200",
                            errInfo: "备注信息不能超过200位"
                        },
                    ],
                });
            },
            _initAddInspectionPlanDateInfo: function () {
                vc.component.addInspectionPlanInfo.startTime = vc.dateFormat(new Date().getTime());
                $('.addInspectionPlanStartTime').datetimepicker({
                    language: 'zh-CN',
                    format: 'yyyy-mm-dd hh:ii:ss',
                    initTime: true,
                    initialDate: new Date(),
                    autoClose: 1,
                    todayBtn: true
                });
                $('.addInspectionPlanStartTime').datetimepicker()
                    .on('changeDate', function (ev) {
                        var value = $(".addFeeConfigStartTime").val();
                        vc.component.addInspectionPlanInfo.startTime = value;
                    });
                $('.addInspectionPlanEndTime').datetimepicker({
                    language: 'zh-CN',
                    format: 'yyyy-mm-dd hh:ii:ss',
                    initTime: true,
                    initialDate: new Date(),
                    autoClose: 1,
                    todayBtn: true
                });
                $('.addInspectionPlanEndTime').datetimepicker()
                    .on('changeDate', function (ev) {
                        var value = $(".addInspectionPlanEndTime").val();
                        vc.component.addInspectionPlanInfo.endTime = value;
                    });
            },
            saveInspectionPlanInfo: function () {
                if (!vc.component.addInspectionPlanValidate()) {
                    vc.toast(vc.validate.errInfo);
                    return;
                }
                vc.component.addInspectionPlanInfo.communityId = vc.getCurrentCommunity().communityId;
                //不提交数据将数据 回调给侦听处理
                if (vc.notNull($props.callBackListener)) {
                    vc.emit($props.callBackListener, $props.callBackFunction, vc.component.addInspectionPlanInfo);
                    $('#addInspectionPlanModel').modal('hide');
                    return;
                }
                vc.http.post(
                    'addInspectionPlan',
                    'save',
                    JSON.stringify(vc.component.addInspectionPlanInfo),
                    {
                        emulateJSON: true
                    },
                    function (json, res) {
                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
                        if (res.status == 200) {
                            //关闭model
                            $('#addInspectionPlanModel').modal('hide');
                            vc.component.clearAddInspectionPlanInfo();
                            vc.emit('inspectionPlanManage', 'listInspectionPlan', {});
                            return;
                        }
                        vc.message(json);
                    },
                    function (errInfo, error) {
                        console.log('请求失败处理');
                        vc.message(errInfo);
                    });
            },
            clearAddInspectionPlanInfo: function () {
                vc.component.addInspectionPlanInfo = {
                    inspectionPlanName: '',
                    inspectionRouteId: '',
                    inspectionPlanPeriod:'',
                    staffId: '',
                    startTime: '',
                    endTime: '',
                    signType:'',
                    state:'',
                    remark: '',
                };
            }
        }
    });
})(window.vc);
WebService/src/main/resources/components/inspectionPlanPackage/choose-inspectionPlan/chooseInspectionPlan.html
New file
@@ -0,0 +1,72 @@
<div id = "chooseInspectionPlanModel" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="chooseInspectionPlanModelLabel" aria-hidden="true" >
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            <div class="modal-header">
                <h3 class="modal-title" id="chooseInspectionPlanModelLabel">选择巡检计划</h3>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">
                <div class=" row">
                    <div class="col-lg-12">
                        <div class="ibox ">
                            <div class="row">
                                <div class="col-sm-7 m-b-xs">
                                </div>
                                <div class="col-sm-5">
                                    <div class="input-group">
                                        <input placeholder="输入巡检计划名称" type="text" v-model="chooseInspectionPlanInfo._currentInspectionPlanName" class="form-control form-control-sm">
                                        <span class="input-group-append">
                                                <button type="button" class="btn btn-sm btn-primary" v-on:click="queryInspectionPlans()">查询</button>
                                            </span>
                                    </div>
                                </div>
                            </div>
                            <div class="table-responsive" style="margin-top:15px">
                                <table class="table table-striped">
                                    <thead>
                                        <tr>
                                                                        <th class="text-center">巡检计划名称</th>
                            <th class="text-center">计划名称</th>
                            <th class="text-center">巡检路线</th>
                            <th class="text-center">执行周期</th>
                            <th class="text-center">执行人员</th>
                            <th class="text-center">开始时间</th>
                            <th class="text-center">结束时间</th>
                            <th class="text-center">签到方式</th>
                            <th class="text-center">状态</th>
                            <th class="text-center">备注</th>
                            <th class="text-center">操作</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <tr v-for="inspectionPlan in chooseInspectionPlanInfo.inspectionPlans">
                                                                        <td class="text-center">{{inspectionPlan.inspectionPlanId}}</td>
                            <td class="text-center">{{inspectionPlan.inspectionPlanName}}</td>
                            <td class="text-center">{{inspectionPlan.inspectionRouteId}}</td>
                            <td class="text-center">{{inspectionPlan.inspectionPlanPeriod}}</td>
                            <td class="text-center">{{inspectionPlan.staffId}}</td>
                            <td class="text-center">{{inspectionPlan.startTime}}</td>
                            <td class="text-center">{{inspectionPlan.endTime}}</td>
                            <td class="text-center">{{inspectionPlan.signType}}</td>
                            <td class="text-center">{{inspectionPlan.state}}</td>
                            <td class="text-center">{{inspectionPlan.remark}}</td>
                                            <td>
                                                <button class="btn btn-primary btn-xs" v-on:click="chooseInspectionPlan(inspectionPlan)">选择</button>
                                            </td>
                                        </tr>
                                    </tbody>
                                </table>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
WebService/src/main/resources/components/inspectionPlanPackage/choose-inspectionPlan/chooseInspectionPlan.js
New file
@@ -0,0 +1,64 @@
(function(vc){
    vc.extends({
        propTypes: {
           emitChooseInspectionPlan:vc.propTypes.string,
           emitLoadData:vc.propTypes.string
        },
        data:{
            chooseInspectionPlanInfo:{
                inspectionPlans:[],
                _currentInspectionPlanName:'',
            }
        },
        _initMethod:function(){
        },
        _initEvent:function(){
            vc.on('chooseInspectionPlan','openChooseInspectionPlanModel',function(_param){
                $('#chooseInspectionPlanModel').modal('show');
                vc.component._refreshChooseInspectionPlanInfo();
                vc.component._loadAllInspectionPlanInfo(1,10,'');
            });
        },
        methods:{
            _loadAllInspectionPlanInfo:function(_page,_row,_name){
                var param = {
                    params:{
                        page:_page,
                        row:_row,
                        communityId:vc.getCurrentCommunity().communityId,
                        name:_name
                    }
                };
                //发送get请求
               vc.http.get('chooseInspectionPlan',
                            'list',
                             param,
                             function(json){
                                var _inspectionPlanInfo = JSON.parse(json);
                                vc.component.chooseInspectionPlanInfo.inspectionPlans = _inspectionPlanInfo.inspectionPlans;
                             },function(){
                                console.log('请求失败处理');
                             }
                           );
            },
            chooseInspectionPlan:function(_inspectionPlan){
                if(_inspectionPlan.hasOwnProperty('name')){
                     _inspectionPlan.inspectionPlanName = _inspectionPlan.name;
                }
                vc.emit($props.emitChooseInspectionPlan,'chooseInspectionPlan',_inspectionPlan);
                vc.emit($props.emitLoadData,'listInspectionPlanData',{
                    inspectionPlanId:_inspectionPlan.inspectionPlanId
                });
                $('#chooseInspectionPlanModel').modal('hide');
            },
            queryInspectionPlans:function(){
                vc.component._loadAllInspectionPlanInfo(1,10,vc.component.chooseInspectionPlanInfo._currentInspectionPlanName);
            },
            _refreshChooseInspectionPlanInfo:function(){
                vc.component.chooseInspectionPlanInfo._currentInspectionPlanName = "";
            }
        }
    });
})(window.vc);
WebService/src/main/resources/components/inspectionPlanPackage/delete-inspectionPlan/deleteInspectionPlan.html
New file
@@ -0,0 +1,19 @@
<div class="modal fade" id="deleteInspectionPlanModel" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title" id="exampleModalLabel">请确认您的操作!</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">
                <tr align="center"><th>确定删除巡检计划</th></tr>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-secondary" data-dismiss="modal" v-on:click="closeDeleteInspectionPlanModel()">点错了</button>
                <button type="button" class="btn btn-primary" v-on:click="deleteInspectionPlan()">确认删除</button>
            </div>
        </div>
    </div>
</div>
WebService/src/main/resources/components/inspectionPlanPackage/delete-inspectionPlan/deleteInspectionPlan.js
New file
@@ -0,0 +1,52 @@
(function(vc,vm){
    vc.extends({
        data:{
            deleteInspectionPlanInfo:{
            }
        },
         _initMethod:function(){
         },
         _initEvent:function(){
             vc.on('deleteInspectionPlan','openDeleteInspectionPlanModal',function(_params){
                vc.component.deleteInspectionPlanInfo = _params;
                $('#deleteInspectionPlanModel').modal('show');
            });
        },
        methods:{
            deleteInspectionPlan:function(){
                vc.component.deleteInspectionPlanInfo.communityId=vc.getCurrentCommunity().communityId;
                vc.http.post(
                    'deleteInspectionPlan',
                    'delete',
                    JSON.stringify(vc.component.deleteInspectionPlanInfo),
                    {
                        emulateJSON:true
                     },
                     function(json,res){
                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
                        if(res.status == 200){
                            //关闭model
                            $('#deleteInspectionPlanModel').modal('hide');
                            vc.emit('inspectionPlanManage','listInspectionPlan',{});
                            return ;
                        }
                        vc.message(json);
                     },
                     function(errInfo,error){
                        console.log('请求失败处理');
                        vc.message(json);
                     });
            },
            closeDeleteInspectionPlanModel:function(){
                $('#deleteInspectionPlanModel').modal('hide');
            }
        }
    });
})(window.vc,window.vc.component);
WebService/src/main/resources/components/inspectionPlanPackage/edit-inspectionPlan/editInspectionPlan.html
New file
@@ -0,0 +1,127 @@
<div id="editInspectionPlanModel" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
     aria-hidden="true">
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            <div class="modal-body">
                <h3 class="m-t-none m-b ">修改巡检计划</h3>
                <div class="ibox-content">
                    <div>
                        <div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">计划名称</label>
                                <div class="col-sm-10">
                                    <input v-model="editInspectionPlanInfo.inspectionPlanName" type="text"
                                           placeholder="必填,请填写计划名称" class="form-control">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">巡检路线</label>
                                <div class="col-sm-10">
                                    <input v-model="editInspectionPlanInfo.inspectionRouteId" type="text"
                                           placeholder="必填,请填写巡检路线" class="form-control">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">执行周期</label>
                                <div class="col-sm-10">
                                    <select class="custom-select" v-bind:disabled = "editInspectionPlanInfo.isDefault=='T'" v-model="editInspectionPlanInfo.inspectionPlanPeriod">
                                        <option selected disabled value="">必填,请选择执行周期</option>
                                        <option v-for="(item,index) in editInspectionPlanInfo.inspectionPlanPeriods" :key="index"
                                                v-bind:value="item.statusCd">{{item.name}}
                                        </option>
                                    </select>
                                </div>
                            </div>
<!--                            <div class="form-group row">-->
<!--                                <label class="col-sm-2 col-form-label">执行人员</label>-->
<!--                                <div class="col-sm-10">-->
<!--                                    <input v-model="editInspectionPlanInfo.staffId" type="text" placeholder="必填,请填写执行人员"-->
<!--                                           class="form-control">-->
<!--                                </div>-->
<!--                            </div>-->
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">执行人员</label>
                                <div class="col-sm-3">
                                    <vc:create name="orgSelect2"
                                               parentModal="editInspectionPlanModel"
                                               callBackListener="editInspectionPlanInfo"
                                               callBackFunction="notify"
                                               namespace="editInspectionPlan"
                                    ></vc:create>
                                </div>
                                <div class="col-sm-3">
                                    <vc:create name="departmentSelect2"
                                               parentModal="editInspectionPlanModel"
                                               callBackListener="editInspectionPlanInfo"
                                               callBackFunction="notify"
                                               namespace="editInspectionPlan"
                                    ></vc:create>
                                </div>
                                <div class="col-sm-3">
                                    <vc:create name="staffSelect2"
                                               parentModal="editInspectionPlanModel"
                                               callBackListener="editInspectionPlanInfo"
                                               callBackFunction="notify"
                                               namespace="editInspectionPlan"
                                    ></vc:create>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">开始时间</label>
                                <div class="col-sm-10">
                                    <input v-model="editInspectionPlanInfo.startTime" type="text"
                                           placeholder="必填,请填写开始时间" class="form-control">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">结束时间</label>
                                <div class="col-sm-10">
                                    <input v-model="editInspectionPlanInfo.endTime" type="text" placeholder="必填,请填写结束时间"
                                           class="form-control">
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">签到方式</label>
                                <div class="col-sm-10">
                                    <select class="custom-select" v-bind:disabled = "editInspectionPlanInfo.isDefault=='T'" v-model="editInspectionPlanInfo.signType">
                                        <option selected disabled value="">必填,请选择签到方式</option>
                                        <option v-for="(item,index) in editInspectionPlanInfo.signTypes" :key="index"
                                                v-bind:value="item.statusCd">{{item.name}}
                                        </option>
                                    </select>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">状态</label>
                                <div class="col-sm-10">
                                    <select class="custom-select" v-bind:disabled = "editInspectionPlanInfo.isDefault=='T'" v-model="editInspectionPlanInfo.state">
                                        <option selected disabled value="">必填,请选择状态</option>
                                        <option v-for="(item,index) in editInspectionPlanInfo.states" :key="index"
                                                v-bind:value="item.statusCd">{{item.name}}
                                        </option>
                                    </select>
                                </div>
                            </div>
                            <div class="form-group row">
                                <label class="col-sm-2 col-form-label">备注</label>
                                <div class="col-sm-10">
                                    <input v-model="editInspectionPlanInfo.remark" type="text" placeholder="选填,请填写备注"
                                           class="form-control">
                                </div>
                            </div>
                            <div class="ibox-content">
                                <button class="btn btn-primary float-right" type="button"
                                        v-on:click="editInspectionPlan()"><i class="fa fa-check"></i>&nbsp;保存
                                </button>
                                <button type="button" class="btn btn-warning float-right" style="margin-right:20px;"
                                        data-dismiss="modal">取消
                                </button>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
WebService/src/main/resources/components/inspectionPlanPackage/edit-inspectionPlan/editInspectionPlan.js
New file
@@ -0,0 +1,245 @@
(function (vc, vm) {
    vc.extends({
        data: {
            editInspectionPlanInfo: {
                inspectionPlanId: '',
                inspectionPlanName: '',
                inspectionRouteId: '',
                inspectionPlanPeriod: '',
                staffId: '',
                staffName: '',
                startTime: '',
                endTime: '',
                signType: '',
                signTypes:[],
                inspectionPlanPeriods: [],
                states: [],
                isDefault:'',
                state: '',
                remark: '',
                companyId:'',
                companyName:'',
                departmentId:'',
                departmentName:'',
                createUserId:'',
                createUserName:''
            }
        },
        _initMethod: function () {
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                vc.component.editInspectionPlanInfo.signTypes = _data;
            });
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                vc.component.editInspectionPlanInfo.inspectionPlanPeriods = _data;
            });
            vc.getDict('pay_fee_config',"fee_type_cd",function(_data){
                vc.component.editInspectionPlanInfo.states = _data;
            });
        },
        _initEvent: function () {
            vc.on('editInspectionPlan', 'openEditInspectionPlanModal', function (_params) {
                vc.component.refreshEditInspectionPlanInfo();
                $('#editInspectionPlanModel').modal('show');
                vc.copyObject(_params, vc.component.editInspectionPlanInfo);
                vc.component.editInspectionPlanInfo.communityId = vc.getCurrentCommunity().communityId;
                //公司select2
                vc.emit('editInspectionPlan', 'orgSelect2', 'setOrg', {
                    orgId: vc.component.editInspectionPlanInfo.companyId,
                    orgName: vc.component.editInspectionPlanInfo.companyName,
                });
                //部门select2
                vc.emit('editInspectionPlan', 'departmentSelect2', 'setDepartment', {
                    orgId: vc.component.editInspectionPlanInfo.departmentId,
                    orgName: vc.component.editInspectionPlanInfo.departmentName,
                });
                //员工select2
                vc.emit('editInspectionPlan', 'staffSelect2', 'setStaff', {
                    staffId: vc.component.editInspectionPlanInfo.staffId,
                    staffName: vc.component.editInspectionPlanInfo.staffName,
                });
            });
        },
        methods: {
            editInspectionPlanValidate: function () {
                return vc.validate.validate({
                    editInspectionPlanInfo: vc.component.editInspectionPlanInfo
                }, {
                    'editInspectionPlanInfo.inspectionPlanName': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "计划名称不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,100",
                            errInfo: "巡检计划名称不能超过100位"
                        },
                    ],
                    'editInspectionPlanInfo.inspectionRouteId': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "巡检路线不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,30",
                            errInfo: "巡检路线不能超过30位"
                        },
                    ],
                    'editInspectionPlanInfo.inspectionPlanPeriod': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "执行周期不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,12",
                            errInfo: "执行周期格式错误"
                        },
                    ],
                    'editInspectionPlanInfo.staffId': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "执行人员不能为空"
                        },
                        {
                            limit: "maxin",
                            param: "1,30",
                            errInfo: "执行人员不能超过30位"
                        },
                    ],
                    'editInspectionPlanInfo.startTime': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "开始时间不能为空"
                        },
                        {
                            limit: "dateTime",
                            param: "",
                            errInfo: "计计划开始时间不是有效的时间格式"
                        },
                    ],
                    'editInspectionPlanInfo.endTime': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "结束时间不能为空"
                        },
                        {
                            limit: "dateTime",
                            param: "",
                            errInfo: "计划结束时间不是有效的时间格式"
                        },
                    ],
                    'editInspectionPlanInfo.signType': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "签到方式不能为空"
                        },
                        {
                            limit: "num",
                            param: "",
                            errInfo: "签到方式格式错误"
                        },
                    ],
                    'editInspectionPlanInfo.state': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "状态不能为空"
                        },
                        {
                            limit: "num",
                            param: "",
                            errInfo: "签到方式格式错误"
                        },
                    ],
                    'editInspectionPlanInfo.remark': [
                        {
                            limit: "maxLength",
                            param: "200",
                            errInfo: "备注信息不能超过200位"
                        },
                    ],
                    'editInspectionPlanInfo.inspectionPlanId': [
                        {
                            limit: "required",
                            param: "",
                            errInfo: "巡检计划名称不能为空"
                        }]
                });
            },
            editInspectionPlan: function () {
                if (!vc.component.editInspectionPlanValidate()) {
                    vc.toast(vc.validate.errInfo);
                    return;
                }
                vc.http.post(
                    'editInspectionPlan',
                    'update',
                    JSON.stringify(vc.component.editInspectionPlanInfo),
                    {
                        emulateJSON: true
                    },
                    function (json, res) {
                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
                        if (res.status == 200) {
                            //关闭model
                            $('#editInspectionPlanModel').modal('hide');
                            vc.emit('inspectionPlanManage', 'listInspectionPlan', {});
                            return;
                        }
                        vc.message(json);
                    },
                    function (errInfo, error) {
                        console.log('请求失败处理');
                        vc.message(errInfo);
                    });
            },
            refreshEditInspectionPlanInfo: function () {
                var signTypes = vc.component.editInspectionPlanInfo.signTypes;
                var states = vc.component.editInspectionPlanInfo.states;
                var inspectionPlanPeriods = vc.component.editInspectionPlanInfo.inspectionPlanPeriods;
                vc.component.editInspectionPlanInfo = {
                    inspectionPlanId: '',
                    inspectionPlanName: '',
                    inspectionRouteId: '',
                    inspectionPlanPeriod: '',
                    staffId: '',
                    staffName: '',
                    startTime: '',
                    endTime: '',
                    signType: '',
                    state: '',
                    remark: '',
                    companyId:'',
                    companyName:'',
                    departmentId:'',
                    departmentName:'',
                    createUserId:'',
                    createUserName:''
                };
                vc.component.editInspectionPlanInfo.signTypes = signTypes;
                vc.component.editInspectionPlanInfo.states = states;
                vc.component.editInspectionPlanInfo.inspectionPlanPeriods = inspectionPlanPeriods;
            }
        }
    });
})(window.vc, window.vc.component);
WebService/src/main/resources/components/inspectionPlanPackage/inspectionPlan-manage/inspectionPlanManage.html
New file
@@ -0,0 +1,123 @@
<div id="component" class="wrapper wrapper-content animated fadeInRight ecommerce">
    <div class="row">
        <div class="col-lg-12">
            <div class="ibox ">
                <div class="ibox-title">
                    <h5>查询条件</h5>
                    <div class="ibox-tools" style="top:10px;">
                    </div>
                </div>
                <div class="ibox-content">
                    <div class="row">
                        <div class="col-sm-4">
                            <div class="form-group">
                                <input type="text" placeholder="请输入计划,路线名称,执行人员姓名"
                                       v-model="inspectionPlanManageInfo.conditions.keyWord" class=" form-control">
                            </div>
                        </div>
                        <div class="col-sm-4">
                            <select class="custom-select" v-model="inspectionPlanManageInfo.conditions.state">
                                <option selected value="">请选择当前状态</option>
                                <option value="888800010001">处理中</option>
                                <option value="888800010002">已完成</option>
                            </select>
                        </div>
                        <div class="col-sm-1">
                            <button type="button" class="btn btn-primary btn-sm"
                                    v-on:click="_queryInspectionPlanMethod()">
                                <i class="glyphicon glyphicon-search"></i> 查询
                            </button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="row">
        <div class="col-lg-12">
            <div class="ibox">
                <div class="ibox-title">
                    <h5>巡检计划信息</h5>
                    <div class="ibox-tools" style="top:10px;">
                        <button type="button" class="btn btn-primary btn-sm" v-on:click="_openAddInspectionPlanModal()">
                            <i class="glyphicon glyphicon-plus"></i>
                            添加巡检计划
                        </button>
                    </div>
                </div>
                <div class="ibox-content">
                    <table class="footable table table-stripped toggle-arrow-tiny"
                           data-page-size="15"
                    >
                        <thead>
                        <tr>
                            <th class="text-center">计划</th>
                            <th class="text-center">路线</th>
                            <th class="text-center">周期</th>
                            <th class="text-center">执行人</th>
                            <th class="text-center">开始时间</th>
                            <th class="text-center">结束时间</th>
                            <th class="text-center">制定人</th>
                            <th class="text-center">制定时间</th>
                            <th class="text-center">状态</th>
                            <th class="text-center">备注</th>
                            <th class="text-center">操作</th>
                        </tr>
                        </thead>
                        <tbody>
                        <tr v-for="inspectionPlan in inspectionPlanManageInfo.inspectionPlans">
                            <td class="text-center">{{inspectionPlan.inspectionPlanName}}</td>
                            <td class="text-center">{{inspectionPlan.inspectionRouteName}}</td>
                            <td class="text-center">{{inspectionPlan.inspectionPlanPeriod}}</td>
                            <td class="text-center">{{inspectionPlan.staffName}}</td>
                            <td class="text-center">{{inspectionPlan.startTime}}</td>
                            <td class="text-center">{{inspectionPlan.endTime}}</td>
                            <td class="text-center">{{inspectionPlan.createUserName}}</td>
                            <td class="text-center">{{inspectionPlan.createTime}}</td>
                            <td class="text-center">{{inspectionPlan.state}}</td>
                            <td class="text-center">{{inspectionPlan.remark}}</td>
                            <td class="text-center">
                                <div class="btn-group">
                                    <button class="btn-white btn btn-xs"
                                            v-on:click="_openEditInspectionPlanModel(inspectionPlan)">修改
                                    </button>
                                </div>
                                <div class="btn-group">
                                    <button class="btn-white btn btn-xs"
                                            v-on:click="_openDeleteInspectionPlanModel(inspectionPlan)">删除
                                    </button>
                                </div>
                            </td>
                        </tr>
                        </tbody>
                        <tfoot>
                        <tr>
                            <td colspan="7">
                                <ul class="pagination float-right"></ul>
                            </td>
                        </tr>
                        </tfoot>
                    </table>
                    <!-- 分页 -->
                    <vc:create name="pagination"></vc:create>
                </div>
            </div>
        </div>
    </div>
    <vc:create name="addInspectionPlan"
               callBackListener=""
               callBackFunction=""
    ></vc:create>
    <vc:create name="editInspectionPlan"></vc:create>
    <vc:create name="deleteInspectionPlan"></vc:create>
</div>
WebService/src/main/resources/components/inspectionPlanPackage/inspectionPlan-manage/inspectionPlanManage.js
New file
@@ -0,0 +1,85 @@
/**
 入驻小区
 **/
(function (vc) {
    var DEFAULT_PAGE = 1;
    var DEFAULT_ROWS = 10;
    vc.extends({
        data: {
            inspectionPlanManageInfo: {
                inspectionPlans: [],
                total: 0,
                records: 1,
                moreCondition: false,
                inspectionPlanName: '',
                conditions: {
                    keyWord: '',
                    state: '',
                }
            }
        },
        _initMethod: function () {
            vc.component._listInspectionPlans(DEFAULT_PAGE, DEFAULT_ROWS);
        },
        _initEvent: function () {
            vc.on('inspectionPlanManage', 'listInspectionPlan', function (_param) {
                vc.component._listInspectionPlans(DEFAULT_PAGE, DEFAULT_ROWS);
            });
            vc.on('pagination', 'page_event', function (_currentPage) {
                vc.component._listInspectionPlans(_currentPage, DEFAULT_ROWS);
            });
        },
        methods: {
            _listInspectionPlans: function (_page, _rows) {
                vc.component.inspectionPlanManageInfo.conditions.page = _page;
                vc.component.inspectionPlanManageInfo.conditions.row = _rows;
                var param = {
                    params: vc.component.inspectionPlanManageInfo.conditions
                };
                //发送get请求
                vc.http.get('inspectionPlanManage',
                    'list',
                    param,
                    function (json, res) {
                        var _inspectionPlanManageInfo = JSON.parse(json);
                        vc.component.inspectionPlanManageInfo.total = _inspectionPlanManageInfo.total;
                        vc.component.inspectionPlanManageInfo.records = _inspectionPlanManageInfo.records;
                        vc.component.inspectionPlanManageInfo.inspectionPlans = _inspectionPlanManageInfo.inspectionPlans;
                        vc.emit('pagination', 'init', {
                            total: vc.component.inspectionPlanManageInfo.records,
                            currentPage: _page
                        });
                    }, function (errInfo, error) {
                        console.log('请求失败处理');
                    }
                );
            },
            _openAddInspectionPlanModal: function () {
                vc.emit('addInspectionPlan', 'openAddInspectionPlanModal', {});
            },
            _openEditInspectionPlanModel: function (_inspectionPlan) {
                vc.emit('editInspectionPlan', 'openEditInspectionPlanModal', _inspectionPlan);
            },
            _openDeleteInspectionPlanModel: function (_inspectionPlan) {
                vc.emit('deleteInspectionPlan', 'openDeleteInspectionPlanModal', _inspectionPlan);
            },
            _queryInspectionPlanMethod: function () {
                vc.component._listInspectionPlans(DEFAULT_PAGE, DEFAULT_ROWS);
            },
            _moreCondition: function () {
                if (vc.component.inspectionPlanManageInfo.moreCondition) {
                    vc.component.inspectionPlanManageInfo.moreCondition = false;
                } else {
                    vc.component.inspectionPlanManageInfo.moreCondition = true;
                }
            }
        }
    });
})(window.vc);
WebService/src/main/resources/components/inspectionPlanPackage/view-inspectionPlan-info/viewInspectionPlanInfo.html
New file
@@ -0,0 +1,90 @@
<div class="row">
    <div class="col-lg-12">
        <div class="ibox ">
            <div class="ibox-title">
                <h5>巡检计划信息</h5>
                <div class="ibox-tools" style="top:10px;">
                    <button type="button" v-if="viewInspectionPlanInfo.index != 2" class="btn btn-primary btn-sm" style="margin-right:10px;"  v-on:click="_openSelectInspectionPlanInfoModel()">
                        <i class="glyphicon glyphicon-search"></i> 选择巡检计划</button>
                    <button type="button" v-if="viewInspectionPlanInfo.index != 2" class="btn btn-primary btn-sm" v-on:click="_openAddInspectionPlanInfoModel()">
                        <i class="glyphicon glyphicon-plus"></i> 添加巡检计划</button>
                </div>
            </div>
            <div class="ibox-content">
                <div class="row">
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >计划名称:</label>
                            <label class="">{{viewInspectionPlanInfo.inspectionPlanName}}</label>
                        </div>
</div>
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >巡检路线:</label>
                            <label class="">{{viewInspectionPlanInfo.inspectionRouteId}}</label>
                        </div>
</div>
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >执行周期:</label>
                            <label class="">{{viewInspectionPlanInfo.inspectionPlanPeriod}}</label>
                        </div>
</div>
</div>
<div class="row">
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >执行人员:</label>
                            <label class="">{{viewInspectionPlanInfo.staffId}}</label>
                        </div>
</div>
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >开始时间:</label>
                            <label class="">{{viewInspectionPlanInfo.startTime}}</label>
                        </div>
</div>
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >结束时间:</label>
                            <label class="">{{viewInspectionPlanInfo.endTime}}</label>
                        </div>
</div>
</div>
<div class="row">
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >签到方式:</label>
                            <label class="">{{viewInspectionPlanInfo.signType}}</label>
                        </div>
</div>
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >状态:</label>
                            <label class="">{{viewInspectionPlanInfo.state}}</label>
                        </div>
</div>
<div class="col-sm-4">
                        <div class="form-group">
                            <label class="col-form-label" >备注:</label>
                            <label class="">{{viewInspectionPlanInfo.remark}}</label>
                        </div>
</div>
</div>
            </div>
        </div>
    </div>
    <vc:create name="addInspectionPlan"
               callBackListener="viewInspectionPlanInfo"
               callBackFunction="chooseInspectionPlan"
    ></vc:create>
    <vc:create name="chooseInspectionPlan"
               emitChooseInspectionPlan="viewInspectionPlanInfo"
               emitLoadData="viewInspectionPlanInfo"
    ></vc:create>
</div>
WebService/src/main/resources/components/inspectionPlanPackage/view-inspectionPlan-info/viewInspectionPlanInfo.js
New file
@@ -0,0 +1,56 @@
/**
    巡检计划 组件
**/
(function(vc){
    vc.extends({
        propTypes: {
           callBackListener:vc.propTypes.string, //父组件名称
           callBackFunction:vc.propTypes.string //父组件监听方法
        },
        data:{
            viewInspectionPlanInfo:{
                index:0,
                flowComponent:'viewInspectionPlanInfo',
                inspectionPlanName:'',
inspectionRouteId:'',
inspectionPlanPeriod:'',
staffId:'',
startTime:'',
endTime:'',
signType:'',
state:'',
remark:'',
            }
        },
        _initMethod:function(){
            //根据请求参数查询 查询 业主信息
            vc.component._loadInspectionPlanInfoData();
        },
        _initEvent:function(){
            vc.on('viewInspectionPlanInfo','chooseInspectionPlan',function(_app){
                vc.copyObject(_app, vc.component.viewInspectionPlanInfo);
                vc.emit($props.callBackListener,$props.callBackFunction,vc.component.viewInspectionPlanInfo);
            });
            vc.on('viewInspectionPlanInfo', 'onIndex', function(_index){
                vc.component.viewInspectionPlanInfo.index = _index;
            });
        },
        methods:{
            _openSelectInspectionPlanInfoModel(){
                vc.emit('chooseInspectionPlan','openChooseInspectionPlanModel',{});
            },
            _openAddInspectionPlanInfoModel(){
                vc.emit('addInspectionPlan','openAddInspectionPlanModal',{});
            },
            _loadInspectionPlanInfoData:function(){
            }
        }
    });
})(window.vc);