Commit 57217be4 by 陶光胜

Merge branch 'developer' of http://115.159.76.241/haoban3.0/haoban-manage3.0 into developer

parents ddbcb0df 89439c4e
......@@ -33,6 +33,8 @@ public class DepartmentDTO implements Serializable {
private Integer sort;
private Integer staffCount;
private String wxEnterpriseId;
private static final long serialVersionUID = 1L;
......@@ -156,6 +158,14 @@ public class DepartmentDTO implements Serializable {
public void setChainName(String chainName) {
this.chainName = chainName;
}
public Integer getStaffCount() {
return staffCount;
}
public void setStaffCount(Integer staffCount) {
this.staffCount = staffCount;
}
......
......@@ -106,5 +106,11 @@ public interface DepartmentApiService {
* @return
*/
Page<DepartmentDTO> pageByParentId(String parentId,String keyword, BasePageInfo pageInfo);
/**
* 根据链查询子部门和自己
* @param chainId
* @return
*/
List<DepartmentDTO> listByChainId(String chainId,String wxEnterpriseId);
}
......@@ -35,4 +35,6 @@ public interface StaffApiService {
public StaffDepartmentRelatedDTO getDepartmentIdAndStaffId(String departmentId, String staffId);
public int countByDepartmentId(String departmentId);
}
......@@ -43,4 +43,6 @@ public interface DepartmentMapper {
TabHaobanDepartment getByRelatedId(@Param("relatedId")String relatedId);
Page<TabHaobanDepartment> pageByParentId(@Param("parentId")String parentId, @Param("keyword")String keyword);
List<TabHaobanDepartment> listByChainId(@Param("chainId")String chainId, @Param("wxEnterpriseId")String wxEnterpriseId);
}
\ No newline at end of file
......@@ -36,4 +36,6 @@ public interface StaffDepartmentRelatedMapper {
TabHaobanStaffDepartmentRelated getDepartmentIdAndStaffId(@Param("departmentId")String departmentId, @Param("staffId")String staffId);
int countByDepartmentId(@Param("departmentId")String departmentId);
}
\ No newline at end of file
......@@ -34,4 +34,6 @@ public interface DepartmentService {
Page<TabHaobanDepartment> pageByParentId(String parentId, String keyword);
List<TabHaobanDepartment> listByChainId(String chainId, String wxEnterpriseId);
}
......@@ -21,4 +21,6 @@ public interface StaffDepartmentRelatedService {
void delByUserid(String userid);
TabHaobanStaffDepartmentRelated getDepartmentIdAndStaffId(String departmentId, String staffId);
int countByDepartmentId(String departmentId);
}
......@@ -126,4 +126,10 @@ public class DepartmentServiceImpl implements DepartmentService {
return mapper.pageByParentId(parentId,keyword);
}
@Override
public List<TabHaobanDepartment> listByChainId(String chainId, String wxEnterpriseId) {
return mapper.listByChainId(chainId,wxEnterpriseId);
}
}
......@@ -69,5 +69,11 @@ public class StaffDepartmentRelatedServiceImpl implements StaffDepartmentRelated
return mapper.getDepartmentIdAndStaffId(departmentId,staffId);
}
@Override
public int countByDepartmentId(String departmentId) {
return mapper.countByDepartmentId(departmentId);
}
}
......@@ -308,4 +308,10 @@ public class DepartmentApiServiceImpl implements DepartmentApiService {
return PageUtil.changePageHelperToCurrentPage(departmentService.pageByParentId(parentId,keyword),DepartmentDTO.class);
}
@Override
public List<DepartmentDTO> listByChainId(String chainId,String wxEnterpriseId) {
List<TabHaobanDepartment> list = departmentService.listByChainId(chainId,wxEnterpriseId);
return EntityUtil.changeEntityListByJSON(DepartmentDTO.class, list);
}
}
......@@ -329,4 +329,10 @@ public class StaffApiServiceImpl implements StaffApiService {
return EntityUtil.changeEntityByJSON(StaffDepartmentRelatedDTO.class, tab);
}
@Override
public int countByDepartmentId(String departmentId) {
return staffDepartmentRelatedService.countByDepartmentId(departmentId);
}
}
......@@ -329,4 +329,14 @@
</select>
<select id="listByChainId" resultMap="BaseResultMap" parameterType="java.lang.String" >
select
<include refid="Base_Column_List" />
from tab_haoban_department
where wx_enterprise_id = #{wxEnterpriseId}
and chain_id like CONCAT(#{chainId},'%')
and status_flag = 1
</select>
</mapper>
\ No newline at end of file
......@@ -209,4 +209,13 @@
and department_id = #{departmentId}
and status_flag = 1
</select>
<select id="countByDepartmentId" resultType="java.lang.Integer" parameterType="java.lang.String" >
select
count(1)
from tab_haoban_staff_department_related
where department_id = #{departmentId,jdbcType=VARCHAR}
and status_flag = 1
</select>
</mapper>
\ No newline at end of file
......@@ -28,6 +28,7 @@ import com.gic.haoban.common.utils.EntityUtil;
import com.gic.haoban.common.utils.HaobanResponse;
import com.gic.haoban.manage.api.dto.DepartmentDTO;
import com.gic.haoban.manage.api.service.DepartmentApiService;
import com.gic.haoban.manage.api.service.StaffApiService;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.qo.DepartmentAddQO;
import com.gic.haoban.manage.web.qo.DepartmentEditQO;
......@@ -45,6 +46,8 @@ public class DepartmentContoller extends WebBaseController{
private StoreGroupService storeGroupService;
@Autowired
private StoreService storeService;
@Autowired
private StaffApiService staffApiService;
@RequestMapping("department-list")
public HaobanResponse departmentList(String parentId,BasePageInfo pageInfo,String keyword) {
LoginVO login = (LoginVO) AuthRequestUtil.getSessionUser();
......@@ -62,8 +65,18 @@ public class DepartmentContoller extends WebBaseController{
page.setTotalCount(1);
page.setResult(list);
}
List<DepartmentDTO> result = page.getResult();
for (DepartmentDTO departmentDTO : result) {
String chainId = departmentDTO.getChainId();
List<DepartmentDTO> sonList = departmentApiService.listByChainId(chainId,wxEnterpriseId);
int staffCount = 0;
for (DepartmentDTO departmentDTO2 : result) {
staffCount += staffApiService.countByDepartmentId(departmentDTO2.getDepartmentId());
}
departmentDTO.setStaffCount(staffCount);
}
PageResult<DepartmentDTO> pageVo = new PageResult<>();
pageVo.setList(page.getResult());
pageVo.setList(result);
pageVo.setPageNum(page.getCurrentPage());
pageVo.setPages(page.getPages());
pageVo.setPageSize(page.getPageSize());
......
......@@ -73,14 +73,17 @@ public class StaffController extends WebBaseController{
public HaobanResponse staffList(String departmentId,Integer activeFlag,String keyword,BasePageInfo pageInfo){
Page<StaffDTO> page = staffApiService.pageStaff(departmentId,activeFlag,keyword,pageInfo);
List<StaffDTO> list = page.getResult();
for (StaffDTO staffDTO : list) {
logger.info("【成员列表】departmentId={},staffId={}",departmentId,staffDTO.getStaffId());
StaffDepartmentRelatedDTO related = staffApiService.getDepartmentIdAndStaffId(departmentId,staffDTO.getStaffId());
logger.info("【成员列表】related={}",JSON.toJSONString(related));
if(related != null) {
staffDTO.setStaffDepartmentRelatedId(related.getStaffDepartmentRelatedId());
if(list != null) {
for (StaffDTO staffDTO : list) {
logger.info("【成员列表】departmentId={},staffId={}",departmentId,staffDTO.getStaffId());
StaffDepartmentRelatedDTO related = staffApiService.getDepartmentIdAndStaffId(departmentId,staffDTO.getStaffId());
logger.info("【成员列表】related={}",JSON.toJSONString(related));
if(related != null) {
staffDTO.setStaffDepartmentRelatedId(related.getStaffDepartmentRelatedId());
}
}
}
logger.info("【员工列表】page={}",JSON.toJSONString(page));
PageResult<StaffDTO> pageVo = new PageResult<>();
pageVo.setList(list);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment