Selaa lähdekoodia

活动页面改造

wuxw 6 vuotta sitten
vanhempi
commit
1f9e1fb181

+ 2 - 2
WebService/src/main/java/com/java110/web/components/activities/AddActivitiesComponent.java

@@ -9,8 +9,8 @@ import org.springframework.stereotype.Component;
 /**
  * 添加活动组件
  */
-@Component("addActivities")
-public class AddActivitiesComponent {
+@Component("addActivitiesView")
+public class AddActivitiesViewComponent {
 
     @Autowired
     private IAddActivitiesSMO addActivitiesSMOImpl;

+ 2 - 2
WebService/src/main/java/com/java110/web/components/activities/EditActivitiesComponent.java

@@ -9,8 +9,8 @@ import org.springframework.stereotype.Component;
 /**
  * 编辑小区组件
  */
-@Component("editActivities")
-public class EditActivitiesComponent {
+@Component("editActivitiesView")
+public class EditActivitiesViewComponent {
 
     @Autowired
     private IEditActivitiesSMO editActivitiesSMOImpl;

+ 52 - 33
WebService/src/main/resources/components/activitiesPackage/activities-manage/activitiesManage.html

@@ -5,32 +5,45 @@
                 <div class="ibox-title">
                     <h5>查询条件</h5>
                     <div class="ibox-tools" style="top:10px;">
-                        <button type="button"  class="btn btn-link btn-sm" style="margin-right:10px;"  v-on:click="_moreCondition()">{{activitiesManageInfo.moreCondition == true?'隐藏':'更多'}}</button>
+                        <button type="button" class="btn btn-link btn-sm" style="margin-right:10px;"
+                                v-on:click="_moreCondition()">{{activitiesManageInfo.moreCondition == true?'隐藏':'更多'}}
+                        </button>
                     </div>
                 </div>
                 <div class="ibox-content">
                     <div class="row">
-<div class="col-sm-4" >
-<div class="form-group">
-                                <input type="text" placeholder="请输入活动标题" v-model="activitiesManageInfo.conditions.title" class=" form-control">
-                            </div>                        </div><div class="col-sm-4" >
-<select class="custom-select" v-model="activitiesManageInfo.conditions.typeCd">
-         <option selected  value="">请选择活动类型</option>
-         <option  value="10001">小区文化</option>
-<option  value="10002">其他</option>
-  </select>                        </div><div class="col-sm-3" >
-<div class="form-group">
-                                <input type="text" placeholder="请输入员工名称" v-model="activitiesManageInfo.conditions.userName" class=" form-control">
-                            </div>                        </div><div class="col-sm-1">
+                        <div class="col-sm-4">
+                            <div class="form-group">
+                                <input type="text" placeholder="请输入活动标题" v-model="activitiesManageInfo.conditions.title"
+                                       class=" form-control">
+                            </div>
+                        </div>
+                        <div class="col-sm-4">
+                            <select class="custom-select" v-model="activitiesManageInfo.conditions.typeCd">
+                                <option selected value="">请选择活动类型</option>
+                                <option value="10001">小区文化</option>
+                                <option value="10002">其他</option>
+                            </select></div>
+                        <div class="col-sm-3">
+                            <div class="form-group">
+                                <input type="text" placeholder="请输入员工名称"
+                                       v-model="activitiesManageInfo.conditions.userName" class=" form-control">
+                            </div>
+                        </div>
+                        <div class="col-sm-1">
                             <button type="button" class="btn btn-primary btn-sm" v-on:click="_queryActivitiesMethod()">
-                                    <i class="glyphicon glyphicon-search"></i> 查询
+                                <i class="glyphicon glyphicon-search"></i> 查询
                             </button>
-                        </div></div>
-<div class="row">
-<div class="col-sm-4" v-if="activitiesManageInfo.moreCondition == true">
-<div class="form-group">
-                                <input type="text" placeholder="请输入活动ID" v-model="activitiesManageInfo.conditions.activitiesId" class=" form-control">
-                            </div>                        </div></div>
+                        </div>
+                    </div>
+                    <div class="row">
+                        <div class="col-sm-4" v-if="activitiesManageInfo.moreCondition == true">
+                            <div class="form-group">
+                                <input type="text" placeholder="请输入活动ID"
+                                       v-model="activitiesManageInfo.conditions.activitiesId" class=" form-control">
+                            </div>
+                        </div>
+                    </div>
 
 
                 </div>
@@ -45,7 +58,7 @@
                     <div class="ibox-tools" style="top:10px;">
                         <button type="button" class="btn btn-primary btn-sm" v-on:click="_openAddActivitiesModal()">
                             <i class="glyphicon glyphicon-plus"></i>
-                            添加活动
+                            发布
                         </button>
                     </div>
                 </div>
@@ -56,7 +69,7 @@
                     >
                         <thead>
                         <tr>
-                                                        <th class="text-center">活动ID</th>
+                            <th class="text-center">活动ID</th>
                             <th class="text-center">活动标题</th>
                             <th class="text-center">活动类型</th>
                             <th class="text-center">头部照片</th>
@@ -70,19 +83,25 @@
                         </thead>
                         <tbody>
                         <tr v-for="activities in activitiesManageInfo.activitiess">
-                                                        <td class="text-center">{{activities.activitiesId}}</td>
+                            <td class="text-center">{{activities.activitiesId}}</td>
                             <td class="text-center">{{activities.title}}</td>
                             <td class="text-center">{{activities.typeCd}}</td>
                             <td class="text-center">{{activities.headerImg}}</td>
                             <td class="text-center">{{activities.context}}</td>
                             <td class="text-center">{{activities.startTime}}</td>
                             <td class="text-center">{{activities.endTime}}</td>
-                            <td class="text-center"><div class="btn-group">
-                                    <button class="btn-white btn btn-xs" v-on:click="_openEditActivitiesModel(activities)">修改</button>
+                            <td class="text-center">
+                                <div class="btn-group">
+                                    <button class="btn-white btn btn-xs"
+                                            v-on:click="_openEditActivitiesModel(activities)">修改
+                                    </button>
                                 </div>
                                 <div class="btn-group">
-                                    <button class="btn-white btn btn-xs" v-on:click="_openDeleteActivitiesModel(activities)">删除</button>
-                                </div></td>
+                                    <button class="btn-white btn btn-xs"
+                                            v-on:click="_openDeleteActivitiesModel(activities)">删除
+                                    </button>
+                                </div>
+                            </td>
 
                         </tr>
                         </tbody>
@@ -101,13 +120,13 @@
         </div>
     </div>
 
-    
 
-    <vc:create name="addActivities"
-               callBackListener=""
-               callBackFunction=""
-    ></vc:create>
-    <vc:create name="editActivities"></vc:create>
+    <div v-bind:class="{no_display:activitiesManageInfo.componentShow != 'addActivitiesView'}">
+        <vc:create name="addActivitiesView"></vc:create>
+    </div>
+    <div v-bind:class="{no_display:activitiesManageInfo.componentShow != 'editActivitiesView'}">
+        <vc:create name="editActivitiesView"></vc:create>
+    </div>
     <vc:create name="deleteActivities"></vc:create>
 
 </div>

+ 57 - 52
WebService/src/main/resources/components/activitiesPackage/activities-manage/activitiesManage.js

@@ -1,87 +1,92 @@
 /**
-    入驻小区
-**/
-(function(vc){
+ 入驻小区
+ **/
+(function (vc) {
     var DEFAULT_PAGE = 1;
     var DEFAULT_ROWS = 10;
     vc.extends({
-        data:{
-            activitiesManageInfo:{
-                activitiess:[],
-                total:0,
-                records:1,
-                moreCondition:false,
-                title:'',
-                conditions:{
-                    title:'',
-typeCd:'',
-userName:'',
-activitiesId:'',
+        data: {
+            activitiesManageInfo: {
+                activitiess: [],
+                total: 0,
+                records: 1,
+                moreCondition: false,
+                componentShow:'activitiesList',
+                title: '',
+                conditions: {
+                    title: '',
+                    typeCd: '',
+                    userName: '',
+                    activitiesId: '',
 
                 }
             }
         },
-        _initMethod:function(){
+        _initMethod: function () {
             vc.component._listActivitiess(DEFAULT_PAGE, DEFAULT_ROWS);
         },
-        _initEvent:function(){
-            
-            vc.on('activitiesManage','listActivities',function(_param){
-                  vc.component._listActivitiess(DEFAULT_PAGE, DEFAULT_ROWS);
+        _initEvent: function () {
+
+            vc.on('activitiesManage', 'listActivities', function (_param) {
+                vc.component._listActivitiess(DEFAULT_PAGE, DEFAULT_ROWS);
             });
-             vc.on('pagination','page_event',function(_currentPage){
-                vc.component._listActivitiess(_currentPage,DEFAULT_ROWS);
+            vc.on('pagination', 'page_event', function (_currentPage) {
+                vc.component._listActivitiess(_currentPage, DEFAULT_ROWS);
             });
         },
-        methods:{
-            _listActivitiess:function(_page, _rows){
+        methods: {
+            _listActivitiess: function (_page, _rows) {
 
                 vc.component.activitiesManageInfo.conditions.page = _page;
                 vc.component.activitiesManageInfo.conditions.row = _rows;
                 var param = {
-                    params:vc.component.activitiesManageInfo.conditions
-               };
+                    params: vc.component.activitiesManageInfo.conditions
+                };
 
-               //发送get请求
-               vc.http.get('activitiesManage',
-                            'list',
-                             param,
-                             function(json,res){
-                                var _activitiesManageInfo=JSON.parse(json);
-                                vc.component.activitiesManageInfo.total = _activitiesManageInfo.total;
-                                vc.component.activitiesManageInfo.records = _activitiesManageInfo.records;
-                                vc.component.activitiesManageInfo.activitiess = _activitiesManageInfo.activitiess;
-                                vc.emit('pagination','init',{
-                                     total:vc.component.activitiesManageInfo.records,
-                                     currentPage:_page
-                                 });
-                             },function(errInfo,error){
-                                console.log('请求失败处理');
-                             }
-                           );
+                //发送get请求
+                vc.http.get('activitiesManage',
+                    'list',
+                    param,
+                    function (json, res) {
+                        var _activitiesManageInfo = JSON.parse(json);
+                        vc.component.activitiesManageInfo.total = _activitiesManageInfo.total;
+                        vc.component.activitiesManageInfo.records = _activitiesManageInfo.records;
+                        vc.component.activitiesManageInfo.activitiess = _activitiesManageInfo.activitiess;
+                        vc.emit('pagination', 'init', {
+                            total: vc.component.activitiesManageInfo.records,
+                            currentPage: _page
+                        });
+                    }, function (errInfo, error) {
+                        console.log('请求失败处理');
+                    }
+                );
             },
             _openAddActivitiesModal:function(){
-                vc.emit('addActivities','openAddActivitiesModal',{});
+                vc.component.activitiesManageInfo.componentShow = 'addActivitiesView';
+                vc.emit('addActivitiesView','openAddActivitiesView',{});
+
             },
             _openEditActivitiesModel:function(_activities){
-                vc.emit('editActivities','openEditActivitiesModal',_activities);
+
+                vc.emit('editActivitiesViewInfo','activitiesEditActivitiesInfo',_activities);
+                vc.component.activitiesManageInfo.componentShow = 'editActivitiesView';
             },
-            _openDeleteActivitiesModel:function(_activities){
-                vc.emit('deleteActivities','openDeleteActivitiesModal',_activities);
+            _openDeleteActivitiesModel: function (_activities) {
+                vc.emit('deleteActivities', 'openDeleteActivitiesModal', _activities);
             },
-            _queryActivitiesMethod:function(){
+            _queryActivitiesMethod: function () {
                 vc.component._listActivitiess(DEFAULT_PAGE, DEFAULT_ROWS);
 
             },
-            _moreCondition:function(){
-                if(vc.component.activitiesManageInfo.moreCondition){
+            _moreCondition: function () {
+                if (vc.component.activitiesManageInfo.moreCondition) {
                     vc.component.activitiesManageInfo.moreCondition = false;
-                }else{
+                } else {
                     vc.component.activitiesManageInfo.moreCondition = true;
                 }
             }
 
-             
+
         }
     });
 })(window.vc);

+ 0 - 72
WebService/src/main/resources/components/activitiesPackage/add-activities/addActivities.html

@@ -1,72 +0,0 @@
-<div id = "addActivitiesModel" 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="addFloorInfo.name" 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="addFloorInfo.floorNum" type="email" 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="addFloorInfo.remark" type="tel" 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="addActivitiesInfo.title"                   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="addActivitiesInfo.typeCd">
-         <option selected  disabled value="">必填,请选择活动类型</option>
-         <option  value="10001">小区文化</option>
-<option  value="10002">其他</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="addActivitiesInfo.headerImg"                   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="addActivitiesInfo.context"                   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="addActivitiesInfo.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="addActivitiesInfo.endTime"                   type="text" placeholder="必填,请填写结束时间" class="form-control">
-         </div>
-</div>
-
-                            <div class="ibox-content">
-                                <button class="btn btn-primary float-right" type="button" v-on:click="saveActivitiesInfo()" ><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>

+ 0 - 165
WebService/src/main/resources/components/activitiesPackage/add-activities/addActivities.js

@@ -1,165 +0,0 @@
-(function (vc) {
-
-    vc.extends({
-        propTypes: {
-            callBackListener: vc.propTypes.string, //父组件名称
-            callBackFunction: vc.propTypes.string //父组件监听方法
-        },
-        data: {
-            addActivitiesInfo: {
-                activitiesId: '',
-                title: '',
-                typeCd: '',
-                headerImg: '',
-                context: '',
-                startTime: '',
-                endTime: '',
-
-            }
-        },
-        _initMethod: function () {
-
-        },
-        _initEvent: function () {
-            vc.on('addActivities', 'openAddActivitiesModal', function () {
-                $('#addActivitiesModel').modal('show');
-            });
-        },
-        methods: {
-            addActivitiesValidate() {
-                return vc.validate.validate({
-                    addActivitiesInfo: vc.component.addActivitiesInfo
-                }, {
-                    'addActivitiesInfo.title': [
-                        {
-                            limit: "required",
-                            param: "",
-                            errInfo: "活动标题不能为空"
-                        },
-                        {
-                            limit: "maxin",
-                            param: "1,200",
-                            errInfo: "活动标题不能超过200位"
-                        },
-                    ],
-                    'addActivitiesInfo.typeCd': [
-                        {
-                            limit: "required",
-                            param: "",
-                            errInfo: "活动类型不能为空"
-                        },
-                        {
-                            limit: "num",
-                            param: "",
-                            errInfo: "活动类型格式错误"
-                        },
-                    ],
-                    'addActivitiesInfo.headerImg': [
-                        {
-                            limit: "required",
-                            param: "",
-                            errInfo: "头部照片不能为空"
-                        },
-                        {
-                            limit: "maxin",
-                            param: "1,200",
-                            errInfo: "头部照片格式错误"
-                        },
-                    ],
-                    'addActivitiesInfo.context': [
-                        {
-                            limit: "required",
-                            param: "",
-                            errInfo: "活动内容不能为空"
-                        },
-                        {
-                            limit: "maxin",
-                            param: "1,4000",
-                            errInfo: "活动内容太长"
-                        },
-                    ],
-                    'addActivitiesInfo.startTime': [
-                        {
-                            limit: "required",
-                            param: "",
-                            errInfo: "开始时间不能为空"
-                        },
-                        {
-                            limit: "date",
-                            param: "",
-                            errInfo: "开始时间格式错误"
-                        },
-                    ],
-                    'addActivitiesInfo.endTime': [
-                        {
-                            limit: "required",
-                            param: "",
-                            errInfo: "结束时间不能为空"
-                        },
-                        {
-                            limit: "date",
-                            param: "",
-                            errInfo: "结束时间格式错误"
-                        },
-                    ],
-
-
-                });
-            },
-            saveActivitiesInfo: function () {
-                if (!vc.component.addActivitiesValidate()) {
-                    vc.toast(vc.validate.errInfo);
-
-                    return;
-                }
-
-                vc.component.addActivitiesInfo.communityId = vc.getCurrentCommunity().communityId;
-                //不提交数据将数据 回调给侦听处理
-                if (vc.notNull($props.callBackListener)) {
-                    vc.emit($props.callBackListener, $props.callBackFunction, vc.component.addActivitiesInfo);
-                    $('#addActivitiesModel').modal('hide');
-                    return;
-                }
-
-                vc.http.post(
-                    'addActivities',
-                    'save',
-                    JSON.stringify(vc.component.addActivitiesInfo),
-                    {
-                        emulateJSON: true
-                    },
-                    function (json, res) {
-                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
-                        if (res.status == 200) {
-                            //关闭model
-                            $('#addActivitiesModel').modal('hide');
-                            vc.component.clearAddActivitiesInfo();
-                            vc.emit('activitiesManage', 'listActivities', {});
-
-                            return;
-                        }
-                        vc.message(json);
-
-                    },
-                    function (errInfo, error) {
-                        console.log('请求失败处理');
-
-                        vc.message(errInfo);
-
-                    });
-            },
-            clearAddActivitiesInfo: function () {
-                vc.component.addActivitiesInfo = {
-                    title: '',
-                    typeCd: '',
-                    headerImg: '',
-                    context: '',
-                    startTime: '',
-                    endTime: '',
-
-                };
-            }
-        }
-    });
-
-})(window.vc);

+ 76 - 0
WebService/src/main/resources/components/activitiesPackage/addActivitiesView/addActivitiesView.html

@@ -0,0 +1,76 @@
+<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="form-group row">
+                    <label class="col-sm-2 col-form-label">活动标题</label>
+                    <div class="col-sm-10">
+                        <input v-model="addActivitiesInfo.title" 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="addActivitiesInfo.typeCd">
+                            <option selected disabled value="">必填,请选择活动类型</option>
+                            <option value="10001">小区文化</option>
+                            <option value="10002">其他</option>
+                        </select></div>
+                </div>
+                <div class="form-group row">
+                    <label class="col-sm-2 col-form-label">头部照片</label>
+                    <div class="col-sm-10">
+                        <vc:create name="uploadImage"
+                                   callBackListener="addActivitiesView"
+                                   callBackFunction="notifyUploadImage"
+                                   namespace="addActivitiesView"
+                        ></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="addActivitiesViewInfo.startTime" readonly type="text" placeholder="必填,请填写开始时间"
+                               class="form-control activitiesStartTime">
+                    </div>
+                </div>
+                <div class="form-group row">
+                    <label class="col-sm-2 col-form-label">结束时间</label>
+                    <div class="col-sm-10">
+                        <input v-model="addActivitiesViewInfo.endTime" readonly type="text" placeholder="必填,请填写结束时间"
+                               class="form-control activitiesEndTime">
+                    </div>
+                </div>
+                <div class="form-group row">
+                    <label class="col-sm-2 col-form-label">活动内容</label>
+                    <div class="col-sm-10">
+                        <div class="ibox-content no-padding">
+                            <div class="summernote"></div>
+                        </div>
+                        <!--<input v-model="addActivitiesInfo.context" type="text" placeholder="必填,请填写活动内容"
+                               class="form-control">-->
+                    </div>
+                </div>
+
+
+                <div class="ibox-content">
+                    <button class="btn btn-primary float-right" type="button" v-on:click="saveActivitiesInfo()"><i
+                            class="fa fa-check"></i>&nbsp;提交
+                    </button>
+                    <button type="button" class="btn btn-warning float-right" style="margin-right:20px;"
+                            v-on:click="closeActivitiesInfo()">取消
+                    </button>
+                </div>
+
+            </div>
+        </div>
+    </div>
+</div>

+ 257 - 0
WebService/src/main/resources/components/activitiesPackage/addActivitiesView/addActivitiesView.js

@@ -0,0 +1,257 @@
+(function (vc) {
+
+    vc.extends({
+        data: {
+            addActivitiesViewInfo: {
+                activitiesId: '',
+                title: '',
+                typeCd: '',
+                headerImg: '',
+                context: '',
+                startTime: '',
+                endTime: '',
+                photos:[],
+
+            }
+        },
+        _initMethod: function () {
+            vc.component._initActivitiesInfo();
+        },
+        _initEvent: function () {
+            vc.on('addActivitiesView', 'openAddActivitiesView', function () {
+                //vc.component._initActivitiesInfo();
+
+            });
+
+            vc.on("addActivitiesView", "notifyUploadImage", function (_param) {
+                vc.component.addActivitiesView.photos = _param;
+            });
+        },
+        methods: {
+            addActivitiesValidate() {
+                return vc.validate.validate({
+                    addActivitiesViewInfo: vc.component.addActivitiesViewInfo
+                }, {
+                    'addActivitiesViewInfo.title': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动标题不能为空"
+                        },
+                        {
+                            limit: "maxin",
+                            param: "1,200",
+                            errInfo: "活动标题不能超过200位"
+                        },
+                    ],
+                    'addActivitiesViewInfo.typeCd': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动类型不能为空"
+                        },
+                        {
+                            limit: "num",
+                            param: "",
+                            errInfo: "活动类型格式错误"
+                        },
+                    ],
+                    'addActivitiesViewInfo.headerImg': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "头部照片不能为空"
+                        },
+                        {
+                            limit: "maxin",
+                            param: "1,200",
+                            errInfo: "头部照片格式错误"
+                        },
+                    ],
+                    'addActivitiesViewInfo.context': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动内容不能为空"
+                        },
+                        {
+                            limit: "maxin",
+                            param: "1,4000",
+                            errInfo: "活动内容太长"
+                        },
+                    ],
+                    'addActivitiesViewInfo.startTime': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "开始时间不能为空"
+                        },
+                        {
+                            limit: "date",
+                            param: "",
+                            errInfo: "开始时间格式错误"
+                        },
+                    ],
+                    'addActivitiesViewInfo.endTime': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "结束时间不能为空"
+                        },
+                        {
+                            limit: "date",
+                            param: "",
+                            errInfo: "结束时间格式错误"
+                        },
+                    ],
+
+
+                });
+            },
+            saveActivitiesInfo: function () {
+                if (!vc.component.addActivitiesValidate()) {
+                    vc.toast(vc.validate.errInfo);
+
+                    return;
+                }
+
+                vc.component.addActivitiesViewInfo.communityId = vc.getCurrentCommunity().communityId;
+
+                vc.http.post(
+                    'addActivitiesView',
+                    'save',
+                    JSON.stringify(vc.component.addActivitiesViewInfo),
+                    {
+                        emulateJSON: true
+                    },
+                    function (json, res) {
+                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
+                        if (res.status == 200) {
+                            //关闭model
+
+                            vc.component.clearaddActivitiesViewInfo();
+                            vc.emit('activitiesManage', 'listActivities', {});
+
+                            return;
+                        }
+                        vc.message(json);
+
+                    },
+                    function (errInfo, error) {
+                        console.log('请求失败处理');
+
+                        vc.message(errInfo);
+
+                    });
+            },
+            clearaddActivitiesViewInfo: function () {
+                vc.component.addActivitiesViewInfo = {
+                    activitiesId: '',
+                    title: '',
+                    typeCd: '',
+                    headerImg: '',
+                    context: '',
+                    startTime: '',
+                    endTime: '',
+                    photos:[],
+
+                };
+            },
+            _initActivitiesInfo: function () {
+                vc.component.addActivitiesViewInfo.startTime = vc.dateFormat(new Date().getTime());
+                $('.activitiesStartTime').datetimepicker({
+                    language: 'zh-CN',
+                    format: 'yyyy-mm-dd hh:ii:ss',
+                    initTime: true,
+                    initialDate: new Date(),
+                    autoClose: 1,
+                    todayBtn: true
+
+                });
+                $('.activitiesStartTime').datetimepicker()
+                    .on('changeDate', function (ev) {
+                        var value = $(".activitiesStartTime").val();
+                        vc.component.addActivitiesViewInfo.startTime = value;
+                    });
+                $('.activitiesEndTime').datetimepicker({
+                    language: 'zh-CN',
+                    format: 'yyyy-mm-dd hh:ii:ss',
+                    initTime: true,
+                    initialDate: new Date(),
+                    autoClose: 1,
+                    todayBtn: true
+                });
+                $('.activitiesEndTime').datetimepicker()
+                    .on('changeDate', function (ev) {
+                        var value = $(".activitiesEndTime").val();
+                        vc.component.addActivitiesViewInfo.endTime = value;
+                    });
+                var $summernote = $('.summernote').summernote({
+                    lang: 'zh-CN',
+                    height: 300,
+                    placeholder: '必填,请输入公告内容',
+                    callbacks: {
+                        onImageUpload: function (files, editor, $editable) {
+                            vc.component.sendFile($summernote, files);
+                        },
+                        onChange: function (contents, $editable) {
+                            vc.component.addActivitiesViewInfo.context = contents;
+                        }
+                    },
+                    toolbar: [
+                        ['style', ['style']],
+                        ['font', ['bold', 'italic', 'underline', 'clear']],
+                        ['fontname', ['fontname']],
+                        ['color', ['color']],
+                        ['para', ['ul', 'ol', 'paragraph']],
+                        ['height', ['height']],
+                        ['table', ['table']],
+                        ['insert', ['link', 'picture']],
+                        ['view', ['fullscreen', 'codeview']],
+                        ['help', ['help']]
+                    ],
+                });
+            },
+            closeActivitiesInfo: function () {
+                vc.emit('activitiesManage', 'listActivities', {});
+
+            },
+            sendFile: function ($summernote, files) {
+                console.log('上传图片', files);
+
+                var param = new FormData();
+                param.append("uploadFile", files[0]);
+                param.append('communityId', vc.getCurrentCommunity().communityId);
+
+                vc.http.upload(
+                    'addActivitiesView',
+                    'uploadImage',
+                    param,
+                    {
+                        emulateJSON: true,
+                        //添加请求头
+                        headers: {
+                            "Content-Type": "multipart/form-data"
+                        }
+                    },
+                    function (json, res) {
+                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
+                        if (res.status == 200) {
+                            var data = JSON.parse(json);
+                            //关闭model
+                            $summernote.summernote('insertImage', "/callComponent/download/getFile/file?fileId=" + data.fileId + "&communityId=" + vc.getCurrentCommunity().communityId);
+                            return;
+                        }
+                        vc.message(json);
+                    },
+                    function (errInfo, error) {
+                        console.log('请求失败处理');
+                        vc.message(errInfo);
+                    });
+
+            }
+
+        }
+    });
+
+})(window.vc);

+ 0 - 59
WebService/src/main/resources/components/activitiesPackage/edit-activities/editActivities.html

@@ -1,59 +0,0 @@
-<div id = "editActivitiesModel" 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="editActivitiesInfo.title"                   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="editActivitiesInfo.typeCd">
-         <option selected  disabled value="">必填,请选择活动类型</option>
-         <option  value="10001">小区文化</option>
-<option  value="10002">其他</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="editActivitiesInfo.headerImg"                   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="editActivitiesInfo.context"                   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="editActivitiesInfo.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="editActivitiesInfo.endTime"                   type="text" placeholder="必填,请填写结束时间" class="form-control">
-         </div>
-</div>
-
-                            <div class="ibox-content">
-                                <button class="btn btn-primary float-right" type="button" v-on:click="editActivities()" ><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>

+ 0 - 157
WebService/src/main/resources/components/activitiesPackage/edit-activities/editActivities.js

@@ -1,157 +0,0 @@
-(function(vc,vm){
-
-    vc.extends({
-        data:{
-            editActivitiesInfo:{
-                activitiesId:'',
-title:'',
-typeCd:'',
-headerImg:'',
-context:'',
-startTime:'',
-endTime:'',
-
-            }
-        },
-         _initMethod:function(){
-
-         },
-         _initEvent:function(){
-             vc.on('editActivities','openEditActivitiesModal',function(_params){
-                vc.component.refreshEditActivitiesInfo();
-                $('#editActivitiesModel').modal('show');
-                vc.copyObject(_params, vc.component.editActivitiesInfo );
-                vc.component.editActivitiesInfo.communityId = vc.getCurrentCommunity().communityId;
-            });
-        },
-        methods:{
-            editActivitiesValidate:function(){
-                        return vc.validate.validate({
-                            editActivitiesInfo:vc.component.editActivitiesInfo
-                        },{
-                            'editActivitiesInfo.title':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"活动标题不能为空"
-                        },
- {
-                            limit:"maxin",
-                            param:"1,200",
-                            errInfo:"活动标题不能超过200位"
-                        },
-                    ],
-'editActivitiesInfo.typeCd':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"活动类型不能为空"
-                        },
- {
-                            limit:"num",
-                            param:"",
-                            errInfo:"活动类型格式错误"
-                        },
-                    ],
-'editActivitiesInfo.headerImg':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"头部照片不能为空"
-                        },
- {
-                            limit:"maxin",
-                            param:"1,200",
-                            errInfo:"头部照片格式错误"
-                        },
-                    ],
-'editActivitiesInfo.context':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"活动内容不能为空"
-                        },
- {
-                            limit:"maxin",
-                            param:"1,4000",
-                            errInfo:"活动内容太长"
-                        },
-                    ],
-'editActivitiesInfo.startTime':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"开始时间不能为空"
-                        },
- {
-                            limit:"date",
-                            param:"",
-                            errInfo:"开始时间格式错误"
-                        },
-                    ],
-'editActivitiesInfo.endTime':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"结束时间不能为空"
-                        },
- {
-                            limit:"date",
-                            param:"",
-                            errInfo:"结束时间格式错误"
-                        },
-                    ],
-'editActivitiesInfo.activitiesId':[
-{
-                            limit:"required",
-                            param:"",
-                            errInfo:"活动ID不能为空"
-                        }]
-
-                        });
-             },
-            editActivities:function(){
-                if(!vc.component.editActivitiesValidate()){
-                    vc.toast(vc.validate.errInfo);
-                    return ;
-                }
-
-                vc.http.post(
-                    'editActivities',
-                    'update',
-                    JSON.stringify(vc.component.editActivitiesInfo),
-                    {
-                        emulateJSON:true
-                     },
-                     function(json,res){
-                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
-                        if(res.status == 200){
-                            //关闭model
-                            $('#editActivitiesModel').modal('hide');
-                             vc.emit('activitiesManage','listActivities',{});
-                            return ;
-                        }
-                        vc.message(json);
-                     },
-                     function(errInfo,error){
-                        console.log('请求失败处理');
-
-                        vc.message(errInfo);
-                     });
-            },
-            refreshEditActivitiesInfo:function(){
-                vc.component.editActivitiesInfo= {
-                  activitiesId:'',
-title:'',
-typeCd:'',
-headerImg:'',
-context:'',
-startTime:'',
-endTime:'',
-
-                }
-            }
-        }
-    });
-
-})(window.vc,window.vc.component);

+ 75 - 0
WebService/src/main/resources/components/activitiesPackage/editActivitiesView/editActivitiesView.html

@@ -0,0 +1,75 @@
+<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>
+                    <div>
+                        <div class="form-group row">
+                            <label class="col-sm-2 col-form-label">活动标题</label>
+                            <div class="col-sm-10">
+                                <input v-model="editActivitiesInfo.title" 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="editActivitiesInfo.typeCd">
+                                    <option selected disabled value="">必填,请选择活动类型</option>
+                                    <option value="10001">小区文化</option>
+                                    <option value="10002">其他</option>
+                                </select></div>
+                        </div>
+                        <div class="form-group row">
+                            <label class="col-sm-2 col-form-label">头部照片</label>
+                            <div class="col-sm-10">
+                                <vc:create name="uploadImage"
+                                           callBackListener="editActivitiesView"
+                                           callBackFunction="notifyUploadImage"
+                                           namespace="editActivitiesView"
+                                ></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="editActivitiesViewInfo.startTime" readonly type="text" placeholder="必填,请填写开始时间" class="form-control editActivitiesStartTime">
+                            </div>
+                        </div>
+                        <div class="form-group row">
+                            <label class="col-sm-2 col-form-label">结束时间</label>
+                            <div class="col-sm-10">
+                                <input v-model="editActivitiesViewInfo.endTime" readonly type="text" placeholder="必填,请填写结束时间" class="form-control editActivitiesEndTime">
+                            </div>
+                        </div>
+                        <div class="form-group row">
+                            <label class="col-sm-2 col-form-label">活动内容</label>
+                            <div class="col-sm-10">
+                                <input v-model="editActivitiesInfo.context" type="text" placeholder="必填,请填写活动内容"
+                                       class="form-control">
+                            </div>
+                        </div>
+
+
+
+                        <div class="ibox-content">
+                            <button class="btn btn-primary float-right" type="button" v-on:click="editActivities()"><i
+                                    class="fa fa-check"></i>&nbsp;保存
+                            </button>
+                            <button type="button" class="btn btn-warning float-right" style="margin-right:20px;" v-on:click="closeEditActivitiesInfo()"
+                                    >取消
+                            </button>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+

+ 220 - 0
WebService/src/main/resources/components/activitiesPackage/editActivitiesView/editActivitiesView.js

@@ -0,0 +1,220 @@
+(function(vc,vm){
+
+    vc.extends({
+        data:{
+            editActivitiesViewInfo:{
+                activitiesId: '',
+                title: '',
+                typeCd: '',
+                headerImg: '',
+                context: '',
+                startTime: '',
+                endTime: '',
+                photos:[]
+            }
+        },
+         _initMethod:function(){
+             vc.component._initEditActivitiesInfo();
+         },
+         _initEvent:function(){
+             vc.on('editActivitiesViewInfo','openEditActivitiesModal',function(_params){
+                vc.component.refreshEditActivitiesInfo();
+                _params.context = filterXSS(_params.context);
+                vc.component.editActivitiesViewInfo = _params;
+            });
+            vc.on('editActivitiesViewInfo','activitiesEditActivitiesInfo',function(_params){
+                vc.component.refreshEditActivitiesInfo();
+                _params.context = filterXSS(_params.context);
+                vc.copyObject(_params,vc.component.editActivitiesViewInfo);
+                $(".eidtSummernote").summernote('code', vc.component.editActivitiesViewInfo.context);
+
+                vc.component.editActivitiesViewInfo.photos.push(vc.component.editActivitiesViewInfo.headerImg);
+                vc.emit('editActivitiesView', 'uploadImage', 'notifyPhotos', vc.component.editActivitiesViewInfo.photos);
+            });
+
+             vc.on("editActivitiesViewInfo", "notifyUploadImage", function (_param) {
+                 vc.component.editActivitiesViewInfo.photos = _param;
+             });
+
+        },
+        methods:{
+            editActivitiesValidate:function(){
+                return vc.validate.validate({
+                    editActivitiesViewInfo: vc.component.editActivitiesViewInfo
+                }, {
+                    'editActivitiesViewInfo.title': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动标题不能为空"
+                        },
+                        {
+                            limit: "maxin",
+                            param: "1,200",
+                            errInfo: "活动标题不能超过200位"
+                        },
+                    ],
+                    'editActivitiesViewInfo.typeCd': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动类型不能为空"
+                        },
+                        {
+                            limit: "num",
+                            param: "",
+                            errInfo: "活动类型格式错误"
+                        },
+                    ],
+                    'editActivitiesViewInfo.headerImg': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "头部照片不能为空"
+                        },
+                        {
+                            limit: "maxin",
+                            param: "1,200",
+                            errInfo: "头部照片格式错误"
+                        },
+                    ],
+                    'editActivitiesViewInfo.context': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动内容不能为空"
+                        },
+                        {
+                            limit: "maxin",
+                            param: "1,4000",
+                            errInfo: "活动内容太长"
+                        },
+                    ],
+                    'editActivitiesViewInfo.startTime': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "开始时间不能为空"
+                        },
+                        {
+                            limit: "date",
+                            param: "",
+                            errInfo: "开始时间格式错误"
+                        },
+                    ],
+                    'editActivitiesViewInfo.endTime': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "结束时间不能为空"
+                        },
+                        {
+                            limit: "date",
+                            param: "",
+                            errInfo: "结束时间格式错误"
+                        },
+                    ],
+                    'editActivitiesViewInfo.activitiesId': [
+                        {
+                            limit: "required",
+                            param: "",
+                            errInfo: "活动ID不能为空"
+                        }]
+
+                });
+             },
+            editActivities:function(){
+                if(!vc.component.editActivitiesValidate()){
+                    vc.toast(vc.validate.errInfo);
+                    return ;
+                }
+                vc.component.editActivitiesViewInfo.communityId = vc.getCurrentCommunity().communityId;
+
+                vc.http.post(
+                    'editActivities',
+                    'update',
+                    JSON.stringify(vc.component.editActivitiesViewInfo),
+                    {
+                        emulateJSON:true
+                     },
+                     function(json,res){
+                        //vm.menus = vm.refreshMenuActive(JSON.parse(json),0);
+                        if(res.status == 200){
+                            //关闭model
+                             vc.emit('activitiesManage','listActivities',{});
+                            return ;
+                        }
+                        vc.message(json);
+                     },
+                     function(errInfo,error){
+                        console.log('请求失败处理');
+
+                        vc.message(errInfo);
+                     });
+            },
+            refreshEditActivitiesInfo:function(){
+                vc.component.editActivitiesViewInfo= {
+                    activitiesId: '',
+                    title: '',
+                    typeCd: '',
+                    headerImg: '',
+                    context: '',
+                    startTime: '',
+                    endTime: '',
+                }
+            },
+            _initEditActivitiesInfo:function(){
+                //vc.component.editActivitiesViewInfo.startTime = vc.dateFormat(new Date().getTime());
+                 $('.editActivitiesStartTime').datetimepicker({
+                    language: 'zh-CN',
+                    format: 'yyyy-mm-dd hh:ii:ss',
+                    initTime: true,
+                    initialDate: new Date(),
+                    autoClose: 1,
+                    todayBtn: true
+
+                });
+                $('.editActivitiesStartTime').datetimepicker()
+                    .on('changeDate', function (ev) {
+                        var value = $(".editActivitiesStartTime").val();
+                        vc.component.editActivitiesViewInfo.startTime = value;
+                    });
+                $('.editActivitiesEndTime').datetimepicker({
+                    language: 'zh-CN',
+                    format: 'yyyy-mm-dd hh:ii:ss',
+                    initTime: true,
+                    initialDate: new Date(),
+                    autoClose: 1,
+                    todayBtn: true
+                });
+                $('.editActivitiesEndTime').datetimepicker()
+                    .on('changeDate', function (ev) {
+                        var value = $(".editActivitiesEndTime").val();
+                        vc.component.editActivitiesViewInfo.endTime = value;
+                    });
+                $('.eidtSummernote').summernote({
+                    lang:'zh-CN',
+                    height: 300,
+                    placeholder:'必填,请输入公告内容',
+                    callbacks : {
+                         onImageUpload: function(files, editor, $editable) {
+                             sendEditFile(files);
+                         },
+                         onChange:function(contents,$editable){
+                            vc.component.editActivitiesViewInfo.context = contents;
+                         }
+                    }
+                });
+
+            },
+            sendEditFile:function(files){
+                console.log('上传图片');
+            },
+            closeEditActivitiesInfo:function(){
+                 vc.emit('activitiesManage','listActivities',{});
+
+            },
+        }
+    });
+
+})(window.vc,window.vc.component);

+ 5 - 1
WebService/src/main/resources/views/activitiesFlow.html

@@ -5,8 +5,12 @@
       xmlns:vc="http://www.thymeleaf.org">
 <head>
     <meta charset="UTF-8"/>
-    <title>活动管理|java110</title>
+    <title>小区文化|java110</title>
     <vc:create name="commonTop"></vc:create>
+    <link href="/css/plugins/summernote/summernote-bs4.min.css" rel="stylesheet">
+    <script src="/js/plugins/summernote/summernote-bs4.min.js"></script>
+    <script src="/js/plugins/summernote/summernote-zh-CN.min.js"></script>
+    <script src="/js/plugins/xss/xss.min.js"></script>
 </head>
 <body>
 <vc:create name="bodyTop"></vc:create>