Api/src/main/java/com/java110/api/listener/auditOrder/ListAuditComplaintsListener.java
New file @@ -0,0 +1,102 @@ package com.java110.api.listener.auditOrder; import com.alibaba.fastjson.JSONObject; import com.java110.api.listener.AbstractServiceApiListener; import com.java110.core.annotation.Java110Listener; import com.java110.core.context.DataFlowContext; import com.java110.core.smo.common.IResourceEntryStoreInnerServiceSMO; import com.java110.core.smo.community.ICommunityInnerServiceSMO; import com.java110.core.smo.complaint.IComplaintInnerServiceSMO; import com.java110.core.smo.complaint.IComplaintUserInnerServiceSMO; import com.java110.entity.audit.AuditUser; import com.java110.event.service.api.ServiceDataFlowEvent; import com.java110.utils.constant.ServiceCodeAuditUserConstant; import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; import com.java110.vo.api.complaint.ApiComplaintDataVo; import com.java110.vo.api.complaint.ApiComplaintVo; import com.java110.vo.api.resourceOrder.ApiResourceOrderDataVo; import com.java110.vo.api.resourceOrder.ApiResourceOrderVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import java.util.ArrayList; import java.util.List; /** * 查询审核订单侦听类 */ @Java110Listener("listAuditComplaintsListener") public class ListAuditComplaintsListener extends AbstractServiceApiListener { @Autowired private IComplaintUserInnerServiceSMO complaintUserInnerServiceSMOImpl; @Override public String getServiceCode() { return ServiceCodeAuditUserConstant.LIST_AUDIT_COMPLAINTS; } @Override public HttpMethod getHttpMethod() { return HttpMethod.GET; } @Override public int getOrder() { return DEFAULT_ORDER; } public IComplaintUserInnerServiceSMO getComplaintUserInnerServiceSMOImpl() { return complaintUserInnerServiceSMOImpl; } public void setComplaintUserInnerServiceSMOImpl(IComplaintUserInnerServiceSMO complaintUserInnerServiceSMOImpl) { this.complaintUserInnerServiceSMOImpl = complaintUserInnerServiceSMOImpl; } @Override protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) { Assert.hasKeyAndValue(reqJson, "storeId", "必填,请填写商户ID"); Assert.hasKeyAndValue(reqJson, "userId", "必填,请填写用户ID"); Assert.hasKeyAndValue(reqJson, "row", "必填,请填写每页显示数"); Assert.hasKeyAndValue(reqJson, "page", "必填,请填写页数"); super.validatePageInfo(reqJson); } @Override protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) { AuditUser auditUser = new AuditUser(); auditUser.setUserId(reqJson.getString("userId")); auditUser.setPage(reqJson.getInteger("page")); auditUser.setRow(reqJson.getInteger("row")); long count = complaintUserInnerServiceSMOImpl.getUserTaskCount(auditUser); List<ApiComplaintDataVo> auditComplaints = null; if (count > 0) { auditComplaints = BeanConvertUtil.covertBeanList(complaintUserInnerServiceSMOImpl.getUserTasks(auditUser), ApiComplaintDataVo.class); } else { auditComplaints = new ArrayList<>(); } ApiComplaintVo apiComplaintVo = new ApiComplaintVo(); apiComplaintVo.setTotal((int) count); apiComplaintVo.setRecords((int) Math.ceil((double) count / (double) reqJson.getInteger("row"))); apiComplaintVo.setComplaints(auditComplaints); ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiComplaintVo), HttpStatus.OK); context.setResponseEntity(responseEntity); } } CommonService/src/main/java/com/java110/common/smo/impl/ComplaintUserInnerServiceSMOImpl.java
@@ -63,7 +63,7 @@ */ public long getUserTaskCount(@RequestBody AuditUser user) { TaskService taskService = processEngine.getTaskService(); TaskQuery query = taskService.createTaskQuery(); TaskQuery query = taskService.createTaskQuery().processDefinitionKey("complaint"); query.taskAssignee(user.getUserId()); return query.count(); } @@ -75,7 +75,7 @@ */ public List<ComplaintDto> getUserTasks(@RequestBody AuditUser user) { TaskService taskService = processEngine.getTaskService(); TaskQuery query = taskService.createTaskQuery(); TaskQuery query = taskService.createTaskQuery().processDefinitionKey("complaint");; query.taskAssignee(user.getUserId()); query.orderByTaskCreateTime().desc(); List<Task> list = null; CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java
@@ -65,7 +65,7 @@ */ public long getUserTaskCount(@RequestBody AuditUser user) { TaskService taskService = processEngine.getTaskService(); TaskQuery query = taskService.createTaskQuery(); TaskQuery query = taskService.createTaskQuery().processDefinitionKey("resourceEntry"); query.taskAssignee(user.getUserId()); return query.count(); } @@ -77,7 +77,7 @@ */ public List<ResourceOrderDto> getUserTasks(@RequestBody AuditUser user) { TaskService taskService = processEngine.getTaskService(); TaskQuery query = taskService.createTaskQuery(); TaskQuery query = taskService.createTaskQuery().processDefinitionKey("resourceEntry"); query.taskAssignee(user.getUserId()); query.orderByTaskCreateTime().desc(); List<Task> list = null; WebService/src/main/java/com/java110/web/components/auditUser/MyAuditComplaintsComponent.java
New file @@ -0,0 +1,42 @@ package com.java110.web.components.auditUser; import com.java110.core.context.IPageData; import com.java110.web.smo.auditUser.IListAuditComplaintsSMO; import com.java110.web.smo.auditUser.IListAuditOrdersSMO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; /** * 我的审核单查询 * <p> * add by wuxw * <p> * 2019-06-29 */ @Component("myAuditComplaints") public class MyAuditComplaintsComponent { @Autowired private IListAuditComplaintsSMO listAuditComplaintsSMOImpl; /** * 查询审核人员列表 * * @param pd 页面数据封装 * @return 返回 ResponseEntity 对象 */ public ResponseEntity<String> list(IPageData pd) { return listAuditComplaintsSMOImpl.listAuditComplaints(pd); } public IListAuditComplaintsSMO getListAuditComplaintsSMOImpl() { return listAuditComplaintsSMOImpl; } public void setListAuditComplaintsSMOImpl(IListAuditComplaintsSMO listAuditComplaintsSMOImpl) { this.listAuditComplaintsSMOImpl = listAuditComplaintsSMOImpl; } } WebService/src/main/java/com/java110/web/smo/auditUser/IListAuditComplaintsSMO.java
New file @@ -0,0 +1,17 @@ package com.java110.web.smo.auditUser; import com.java110.core.context.IPageData; import org.springframework.http.ResponseEntity; /** * 查询审核单 */ public interface IListAuditComplaintsSMO { /** * 查询审核订单 * @param pd * @return */ public ResponseEntity<String> listAuditComplaints(IPageData pd); } WebService/src/main/java/com/java110/web/smo/auditUser/impl/ListAuditComplaintsSMOImpl.java
New file @@ -0,0 +1,63 @@ package com.java110.web.smo.auditUser.impl; import com.alibaba.fastjson.JSONObject; import com.java110.core.component.AbstractComponentSMO; import com.java110.core.context.IPageData; import com.java110.entity.component.ComponentValidateResult; import com.java110.utils.constant.PrivilegeCodeConstant; import com.java110.utils.constant.ServiceConstant; import com.java110.utils.exception.SMOException; import com.java110.web.smo.auditUser.IListAuditComplaintsSMO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpMethod; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; /** * 查询auditUser服务类 */ @Service("listAuditComplaintsSMOImpl") public class ListAuditComplaintsSMOImpl extends AbstractComponentSMO implements IListAuditComplaintsSMO { @Autowired private RestTemplate restTemplate; @Override public ResponseEntity<String> listAuditComplaints(IPageData pd) throws SMOException { return businessProcess(pd); } @Override protected void validate(IPageData pd, JSONObject paramIn) { super.validatePageInfo(pd); super.checkUserHasPrivilege(pd, restTemplate, PrivilegeCodeConstant.AGENT_HAS_LIST_AUDITORDER); } @Override protected ResponseEntity<String> doBusinessProcess(IPageData pd, JSONObject paramIn) { ComponentValidateResult result = super.validateStoreStaffCommunityRelationship(pd, restTemplate); paramIn.put("storeId", result.getStoreId()); paramIn.put("userId", result.getUserId()); String apiUrl = ServiceConstant.SERVICE_API_URL + "/api/auditUser.listAuditComplaints" + mapToUrlParam(paramIn); ResponseEntity<String> responseEntity = this.callCenterService(restTemplate, pd, "", apiUrl, HttpMethod.GET); return responseEntity; } public RestTemplate getRestTemplate() { return restTemplate; } public void setRestTemplate(RestTemplate restTemplate) { this.restTemplate = restTemplate; } } WebService/src/main/resources/components/auditPackage/myAuditComplaint/myAuditComplaints.html
New file @@ -0,0 +1,61 @@ <div 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"> <table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15" > <thead> <tr> <th class="text-center">投诉ID</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="complaint in myAuditComplaintsInfo.complaints"> <td class="text-center">{{complaint.complaintId}}</td> <td class="text-center">{{complaint.typeCdName}}</td> <td class="text-center"> {{complaint.floorNum}}号楼{{complaint.unitNum}}单元{{complaint.roomNum}}室 </td> <td class="text-center">{{complaint.complaintName}}</td> <td class="text-center">{{complaint.tel}}</td> <td class="text-center">{{complaint.stateName}}</td> <td class="text-center"> <div class="btn-group"> <button class="btn-white btn btn-xs" v-on:click="_openAuditComplaintModel(complaint)">审批 </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> </div> WebService/src/main/resources/components/auditPackage/myAuditComplaint/myAuditComplaints.js
New file @@ -0,0 +1,75 @@ /** 入驻小区 **/ (function (vc) { var DEFAULT_PAGE = 1; var DEFAULT_ROWS = 10; vc.extends({ data: { myAuditComplaintsInfo: { complaints: [], total: 0, records: 1, moreCondition: false, userName: '', conditions: { AuditOrdersId: '', userName: '', auditLink: '', } } }, _initMethod: function () { vc.component._listAuditOrders(DEFAULT_PAGE, DEFAULT_ROWS); }, _initEvent: function () { vc.on('pagination', 'page_event', function (_currentPage) { vc.component._listAuditOrders(_currentPage, DEFAULT_ROWS); }); }, methods: { _listAuditOrders: function (_page, _rows) { vc.component.myAuditComplaintsInfo.conditions.page = _page; vc.component.myAuditComplaintsInfo.conditions.row = _rows; var param = { params: vc.component.myAuditComplaintsInfo.conditions }; //发送get请求 vc.http.get('myAuditComplaints', 'list', param, function (json, res) { var _myAuditComplaintsInfo = JSON.parse(json); vc.component.myAuditComplaintsInfo.total = _myAuditComplaintsInfo.total; vc.component.myAuditComplaintsInfo.records = _myAuditComplaintsInfo.records; vc.component.myAuditComplaintsInfo.complaints = _myAuditComplaintsInfo.complaints; vc.emit('pagination', 'init', { total: vc.component.myAuditComplaintsInfo.records, currentPage: _page }); }, function (errInfo, error) { console.log('请求失败处理'); } ); }, _openAuditComplaintModel: function () { //vc.jumpToPage("/flow/addAuditOrderstepFlow") }, _queryAuditOrdersMethod: function () { vc.component._listAuditOrders(DEFAULT_PAGE, DEFAULT_ROWS); }, _moreCondition: function () { if (vc.component.AuditOrdersManageInfo.moreCondition) { vc.component.AuditOrdersManageInfo.moreCondition = false; } else { vc.component.AuditOrdersManageInfo.moreCondition = true; } } } }); })(window.vc); WebService/src/main/resources/views/myAuditComplaintsFlow.html
New file @@ -0,0 +1,36 @@ <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" xmlns:vc="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"/> <title>审核投诉单|java110</title> <vc:create name="commonTop"></vc:create> </head> <body> <vc:create name="bodyTop"></vc:create> <div id="wrapper"> <vc:create name="menu"></vc:create> <div id="page-wrapper" class="gray-bg dashbard-1"> <div class="row border-bottom"> <vc:create name="nav"></vc:create> </div> <div class="wrapper wrapper-content" style="padding-bottom: 0px;"> <vc:create name="breadcrumb"></vc:create> </div> <!-- id="component" --> <div id="component" class="wrapper wrapper-content animated fadeInRight"> <vc:create name="myAuditComplaints"></vc:create> </div> <vc:create name="copyright"></vc:create> </div> </div> <vc:create name="commonBottom"></vc:create> </body> </html> java110-bean/src/main/java/com/java110/vo/api/complaint/ApiComplaintDataVo.java
@@ -5,6 +5,10 @@ public class ApiComplaintDataVo implements Serializable { //工作流实例ID private String processInstanceId; private String taskId; private String complaintId; private String storeId; private String typeCd; @@ -19,6 +23,10 @@ private String unitNum; private String floorNum; private String communityId; // private String auditCode; private String auditMessage; public String getComplaintId() { @@ -132,4 +140,36 @@ public void setTypeCdName(String typeCdName) { this.typeCdName = typeCdName; } public String getProcessInstanceId() { return processInstanceId; } public void setProcessInstanceId(String processInstanceId) { this.processInstanceId = processInstanceId; } public String getTaskId() { return taskId; } public void setTaskId(String taskId) { this.taskId = taskId; } public String getAuditCode() { return auditCode; } public void setAuditCode(String auditCode) { this.auditCode = auditCode; } public String getAuditMessage() { return auditMessage; } public void setAuditMessage(String auditMessage) { this.auditMessage = auditMessage; } } java110-utils/src/main/java/com/java110/utils/constant/ServiceCodeAuditUserConstant.java
@@ -33,5 +33,10 @@ */ public static final String LIST_AUDITORDERS = "auditUser.listAuditOrders"; /** * 查询 审核投诉 */ public static final String LIST_AUDIT_COMPLAINTS = "auditUser.listAuditComplaints"; }