bug修改+权限

This commit is contained in:
chen 2024-07-15 15:47:43 +08:00
parent 5b3cb53cb9
commit d762ac6895
8 changed files with 52 additions and 5 deletions

View File

@ -37,4 +37,6 @@ public interface ProjectInfoDao extends BaseMapper<ProjectInfo> {
List<ProjectInfoBase> getAcceptNameList(); List<ProjectInfoBase> getAcceptNameList();
List<ProjectInfoListItemResp> getListByIds(Page<ProjectInfo> page,@Param("list") List list); List<ProjectInfoListItemResp> getListByIds(Page<ProjectInfo> page,@Param("list") List list);
}
ProjectInfo getInfoByProName(@Param("projectName") String projectName);
}

View File

@ -154,6 +154,12 @@
</foreach> </foreach>
</if> </if>
</select> </select>
<select id="getInfoByProName" resultType="com.xqopen.kehui.project.entity.ProjectInfo"
parameterType="java.lang.String">
select *
from project_info
where project_name = #{projectName}
</select>
<sql id="com"> <sql id="com">
AND ( AND (

View File

@ -58,8 +58,11 @@
left join system_user_login sl on cast(pw.user_id as BIGINT)=sl.id_ left join system_user_login sl on cast(pw.user_id as BIGINT)=sl.id_
left join personal_member pm on pm.id_ =sl.userinfo_id left join personal_member pm on pm.id_ =sl.userinfo_id
left join project_info pi on pi.id_=cast(pw.project_id as BIGINT) left join project_info pi on pi.id_=cast(pw.project_id as BIGINT)
where where pw.is_complete='0'
pw.is_complete='0' and pw.dept_id=#{projectWeekly.deptId} and pw.weekly_type = '1' <if test="projectWeekly.Id!=null">
and pw.id_=#{projectWeekly.id}
</if>
and pw.dept_id=#{projectWeekly.deptId} and pw.weekly_type = '1'
</select> </select>
<select id="getDeptId" resultType="java.lang.String" parameterType="java.lang.String"> <select id="getDeptId" resultType="java.lang.String" parameterType="java.lang.String">

View File

@ -1,5 +1,6 @@
package com.xqopen.kehui.project.action; package com.xqopen.kehui.project.action;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.support.spring.FastJsonJsonView; import com.alibaba.fastjson.support.spring.FastJsonJsonView;
import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.plugins.Page;
@ -72,6 +73,8 @@ public class ProjectDepartmentController implements ProjectDepartmentApi {
projectWeekly.setIsDeleted("0"); projectWeekly.setIsDeleted("0");
projectWeekly.setUserId(String.valueOf(userId)); projectWeekly.setUserId(String.valueOf(userId));
projectWeekly.setWeeklyType("0"); projectWeekly.setWeeklyType("0");
if (!StringUtils.isEmpty(projectWeeklyFindReq.getId() != null))
projectWeekly.setId(projectWeeklyFindReq.getId());
List<ProjectWeeklyDto> list = projectDepartmentService.getListByDeptId(page, projectWeekly); List<ProjectWeeklyDto> list = projectDepartmentService.getListByDeptId(page, projectWeekly);
//判断当前账号是否是项目专员/负责人 //判断当前账号是否是项目专员/负责人
//因为json里面存的是人事id通过账号找不到先把账号id转为人事id //因为json里面存的是人事id通过账号找不到先把账号id转为人事id
@ -89,6 +92,8 @@ public class ProjectDepartmentController implements ProjectDepartmentApi {
projectWeekly1.setIsDeleted("0"); projectWeekly1.setIsDeleted("0");
projectWeekly1.setWeeklyType("0"); projectWeekly1.setWeeklyType("0");
projectWeekly1.setProjectId(weekly.getProjectId()); projectWeekly1.setProjectId(weekly.getProjectId());
JSONObject ext = projectWeekly1.getExt();
projectWeekly1.setExt((JSONObject) ext.put("userId", String.valueOf(systemUserLogin.getUserinfoId())));
if(!StringUtils.isEmpty(projectWeeklyFindReq.getId()!=null))projectWeekly1.setId(projectWeeklyFindReq.getId()); if(!StringUtils.isEmpty(projectWeeklyFindReq.getId()!=null))projectWeekly1.setId(projectWeeklyFindReq.getId());
if(!StringUtils.isEmpty(projectWeeklyFindReq.getDeptId()!=null))projectWeekly.setDeptId(projectWeeklyFindReq.getDeptId()); if(!StringUtils.isEmpty(projectWeeklyFindReq.getDeptId()!=null))projectWeekly.setDeptId(projectWeeklyFindReq.getDeptId());
list.addAll(projectWeeklyService.getList(page, projectWeekly1)); list.addAll(projectWeeklyService.getList(page, projectWeekly1));
@ -99,6 +104,7 @@ public class ProjectDepartmentController implements ProjectDepartmentApi {
listResp.setLs(list); listResp.setLs(list);
listResp.setPages(page.getPages()); listResp.setPages(page.getPages());
listResp.setTotal(page.getTotal()); listResp.setTotal(page.getTotal());
listResp.setUserId(String.valueOf(systemUserLogin.getUserinfoId()));
return ApiResponse.fillSuccess(listResp); return ApiResponse.fillSuccess(listResp);
} }
} catch (Exception e) { } catch (Exception e) {

View File

@ -1,5 +1,6 @@
package com.xqopen.kehui.project.action; package com.xqopen.kehui.project.action;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.support.spring.FastJsonJsonView; import com.alibaba.fastjson.support.spring.FastJsonJsonView;
import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.EntityWrapper;
@ -86,12 +87,12 @@ public class ProjectWeeklyController implements ProjectWeeklyApi {
if (ObjectUtils.isEmpty(weekly)) { if (ObjectUtils.isEmpty(weekly)) {
weekly = new ProjectWeekly(); weekly = new ProjectWeekly();
weekly.setWeeklyType("1"); weekly.setWeeklyType("1");
weekly.setExt(projectWeekly.getExt());
weekly.setWeek(projectWeekly.getWeek()); weekly.setWeek(projectWeekly.getWeek());
weekly.setProjectId(projectWeekly.getProjectId()); weekly.setProjectId(projectWeekly.getProjectId());
weekly.setDeptId(projectWeekly.getDeptId()); weekly.setDeptId(projectWeekly.getDeptId());
weekly.setCreatedAt(new Timestamp(System.currentTimeMillis())); weekly.setCreatedAt(new Timestamp(System.currentTimeMillis()));
projectWeeklyService.insert(weekly); projectWeeklyService.insert(weekly);
projectWeekly.setParentId(weekly.getId()); projectWeekly.setParentId(weekly.getId());
} }
//将人事id转为账号id //将人事id转为账号id
@ -120,7 +121,7 @@ public class ProjectWeeklyController implements ProjectWeeklyApi {
* @return * @return
*/ */
private ProjectInfo getProject(ProjectWeeklyAddReq projectWeeklyAddReq, ProjectWeekly projectWeekly) { private ProjectInfo getProject(ProjectWeeklyAddReq projectWeeklyAddReq, ProjectWeekly projectWeekly) {
JSONObject ext = projectWeeklyAddReq.getExt(); JSONObject ext = updateExt(projectWeeklyAddReq);
if (!ObjectUtils.isEmpty(ext)) { if (!ObjectUtils.isEmpty(ext)) {
projectWeekly.setExt(ext); projectWeekly.setExt(ext);
EntityWrapper<ProjectInfo> wrapper = new EntityWrapper<>(); EntityWrapper<ProjectInfo> wrapper = new EntityWrapper<>();
@ -135,6 +136,25 @@ public class ProjectWeeklyController implements ProjectWeeklyApi {
return null; return null;
} }
/**
* 向ext中添加字段
*
* @param projectWeeklyAddReq
* @return
*/
private JSONObject updateExt(ProjectWeeklyAddReq projectWeeklyAddReq){
// 根据项目名称获取项目专员和项目负责人id 存入ext中
JSONObject ext = projectWeeklyAddReq.getExt();
String projectName = ext.get("projectName").toString();
ProjectInfo projectInfo = projectInfoService.getInfoByProName(projectName);
JSONObject extInfo = projectInfo.getExt();
//获取projectManagerData
JSONArray projectManagerData = extInfo.getJSONArray("projectManagerData");
ext.put("projectManagerData",projectManagerData.getString(projectManagerData.toArray().length -1 ));
ext.put("draftManId",extInfo.getString("draftManId"));
return ext;
}
@Override @Override
@PostMapping(Api.PROJECT_WEEKLY) @PostMapping(Api.PROJECT_WEEKLY)
public String list(@RequestHeader("userId") Long userId, @RequestBody ProjectWeeklyFindReq projectWeeklyFindReq) throws XQException { public String list(@RequestHeader("userId") Long userId, @RequestBody ProjectWeeklyFindReq projectWeeklyFindReq) throws XQException {

View File

@ -15,4 +15,7 @@ public class ProjectWeeklyListResp {
@ApiModelProperty(value = "总页数", required = true, position = 3) @ApiModelProperty(value = "总页数", required = true, position = 3)
private int pages; private int pages;
@ApiModelProperty(value = "用户id", required = true, position = 3)
private String userId;
} }

View File

@ -24,4 +24,6 @@ public interface IProjectInfoService extends IService<ProjectInfo> {
List<ProjectInfoBase> getAcceptNameList(); List<ProjectInfoBase> getAcceptNameList();
List<ProjectInfoListItemResp> getListByIds(Page<ProjectInfo> page,List list); List<ProjectInfoListItemResp> getListByIds(Page<ProjectInfo> page,List list);
ProjectInfo getInfoByProName(String projectName);
} }

View File

@ -43,4 +43,9 @@ public class ProjectInfoServiceImpl extends ServiceImpl<ProjectInfoDao, ProjectI
public List<ProjectInfoListItemResp> getListByIds(Page<ProjectInfo> page, List list) { public List<ProjectInfoListItemResp> getListByIds(Page<ProjectInfo> page, List list) {
return infoDao.getListByIds(page,list); return infoDao.getListByIds(page,list);
} }
@Override
public ProjectInfo getInfoByProName(String projectName) {
return infoDao.getInfoByProName(projectName);
}
} }