dcs пре 9 месеци
родитељ
комит
e9c66e5997

+ 8 - 12
virgo.api/src/main/java/com/bosshand/virgo/api/operate/controller/OperateFlowDataController.java

@@ -29,12 +29,10 @@ public class OperateFlowDataController {
     public Response get(@PathVariable long id) {
         OperateFlowData operateFlowData = operateFlowDataService.get(id);
         if (operateFlowData != null) {
-            operateFlowData.setProjectName(projectItemTargetRoomService.getProject(operateFlowData.getProjectId()).getName());
-            operateFlowData.setProjectItemName(projectItemTargetRoomService.getProjectItem(operateFlowData.getProjectItemId()).getName());
-            operateFlowData.setProjectItemTargetName(projectItemTargetRoomService.getProjectItemTarget(operateFlowData.getProjectItemTargetId()).getName());
-            if (operateFlowData.getProjectItemTargetRoomId() != 0) {
-                operateFlowData.setProjectItemTargetRoomName(projectItemTargetRoomService.getProjectItemTargetRoom(operateFlowData.getProjectItemTargetRoomId()).getName());
-            }
+            operateFlowData.setProjectName(operateFlowData.getProjectId() != 0 ? projectItemTargetRoomService.getProject(operateFlowData.getProjectId()).getName() : null);
+            operateFlowData.setProjectItemName(operateFlowData.getProjectItemId() != 0 ? projectItemTargetRoomService.getProjectItem(operateFlowData.getProjectItemId()).getName() : null);
+            operateFlowData.setProjectItemTargetName(operateFlowData.getProjectItemTargetId() != 0 ? projectItemTargetRoomService.getProjectItemTarget(operateFlowData.getProjectItemTargetId()).getName() : null);
+            operateFlowData.setProjectItemTargetRoomName(operateFlowData.getProjectItemTargetRoomId() != 0 ? projectItemTargetRoomService.getProjectItemTargetRoom(operateFlowData.getProjectItemTargetRoomId()).getName() : null);
         }
         return Response.ok(operateFlowData);
     }
@@ -51,12 +49,10 @@ public class OperateFlowDataController {
         List<OperateFlowData> list = operateFlowDataService.getListLimit(operateFlowData, currPage, pageSize);
         if (list.size() > 0) {
             for (OperateFlowData of : list) {
-                of.setProjectName(projectItemTargetRoomService.getProject(of.getProjectId()).getName());
-                of.setProjectItemName(projectItemTargetRoomService.getProjectItem(of.getProjectItemId()).getName());
-                of.setProjectItemTargetName(projectItemTargetRoomService.getProjectItemTarget(of.getProjectItemTargetId()).getName());
-                if (of.getProjectItemTargetRoomId() != 0) {
-                    of.setProjectItemTargetRoomName(projectItemTargetRoomService.getProjectItemTargetRoom(of.getProjectItemTargetRoomId()).getName());
-                }
+                of.setProjectName(of.getProjectId() != 0 ? projectItemTargetRoomService.getProject(of.getProjectId()).getName() : null);
+                of.setProjectItemName(of.getProjectItemId() != 0 ? projectItemTargetRoomService.getProjectItem(of.getProjectItemId()).getName() : null);
+                of.setProjectItemTargetName(of.getProjectItemTargetId() != 0 ? projectItemTargetRoomService.getProjectItemTarget(of.getProjectItemTargetId()).getName() : null);
+                of.setProjectItemTargetRoomName(of.getProjectItemTargetRoomId() != 0 ? projectItemTargetRoomService.getProjectItemTargetRoom(of.getProjectItemTargetRoomId()).getName() : null);
             }
         }
         int totalCount = operateFlowDataService.count(operateFlowData);

+ 30 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/operate/model/OperateFlowData.java

@@ -11,6 +11,12 @@ public class OperateFlowData {
 
     private long id;
 
+    private long userId;
+
+    private String userName;
+
+    private String userPortrait;
+
     private long projectId;
 
     private String projectName;
@@ -62,6 +68,30 @@ public class OperateFlowData {
         this.id = id;
     }
 
+    public long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(long userId) {
+        this.userId = userId;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getUserPortrait() {
+        return userPortrait;
+    }
+
+    public void setUserPortrait(String userPortrait) {
+        this.userPortrait = userPortrait;
+    }
+
     public long getProjectId() {
         return projectId;
     }

+ 25 - 16
virgo.api/src/main/resources/mapper/OperateFlowDataMapper.xml

@@ -6,6 +6,9 @@
 
     <resultMap type="com.bosshand.virgo.api.operate.model.OperateFlowData" id="operateFlowDataResult">
         <id column="id" property="id" />
+        <result column="userId" property="userId" />
+        <result column="userName" property="userName" />
+        <result column="userPortrait" property="userPortrait" />
         <result column="projectId" property="projectId" />
         <result column="projectItemId" property="projectItemId" />
         <result column="projectItemTargetId" property="projectItemTargetId" />
@@ -24,8 +27,13 @@
         <result column="type" property="type" />
     </resultMap>
 
+    <sql id="query">
+        SELECT a.*, b.name as userName, b.portrait as userPortrait FROM operate_flow_data a left join mgr_user b on a.userId = b.id
+    </sql>
+
     <select id="get" resultMap="operateFlowDataResult">
-        SELECT * FROM operate_flow_data where id = #{id}
+        <include refid="query"/>
+        where a.id = #{id}
     </select>
 
     <select id="census" resultMap="operateFlowDataResult">
@@ -33,43 +41,43 @@
     </select>
 
     <select id="getListLimit" resultMap="operateFlowDataResult">
-        SELECT * FROM operate_flow_data
+        <include refid="query"/>
         <where>
             <if test="ofd.id != 0">
-                and id = #{ofd.id}
+                and a.id = #{ofd.id}
             </if>
             <if test="ofd.projectId != 0">
-                and projectId = #{ofd.projectId}
+                and a.projectId = #{ofd.projectId}
             </if>
             <if test="ofd.projectItemId != 0">
-                and projectItemId = #{ofd.projectItemId}
+                and a.projectItemId = #{ofd.projectItemId}
             </if>
             <if test="ofd.projectItemTargetId != 0">
-                and projectItemTargetId = #{ofd.projectItemTargetId}
+                and a.projectItemTargetId = #{ofd.projectItemTargetId}
             </if>
             <if test="ofd.projectItemTargetRoomId != 0">
-                and projectItemTargetRoomId = #{ofd.projectItemTargetRoomId}
+                and a.projectItemTargetRoomId = #{ofd.projectItemTargetRoomId}
             </if>
             <if test="ofd.deviceId != 0">
-                and deviceId = #{ofd.deviceId}
+                and a.deviceId = #{ofd.deviceId}
             </if>
             <if test="ofd.projectFlowId != 0">
-                and projectFlowId = #{ofd.projectFlowId}
+                and a.projectFlowId = #{ofd.projectFlowId}
             </if>
             <if test="ofd.state != null">
-                and state = #{ofd.state}
+                and a.state = #{ofd.state}
             </if>
             <if test="ofd.createdByUserId != 0">
-                and createdByUserId = #{ofd.createdByUserId}
+                and a.createdByUserId = #{ofd.createdByUserId}
             </if>
             <if test="ofd.flowType != null">
-                and flowType = #{ofd.flowType}
+                and a.flowType = #{ofd.flowType}
             </if>
             <if test="ofd.type != null">
-                and type = #{ofd.type}
+                and a.type = #{ofd.type}
             </if>
         </where>
-        order by date desc
+        order by a.date desc
         limit #{currIndex} , #{pageSize}
     </select>
 
@@ -115,11 +123,11 @@
 
     <insert id="save" useGeneratedKeys="true" keyProperty="id">
         INSERT INTO operate_flow_data(
-            projectId, projectItemId,
+            userId,projectId, projectItemId,
             projectItemTargetId, projectItemTargetRoomId,
             deviceId, date, projectFlowId, flowUserList, state, flowData, createdByUserId, document, receiver, attachment, flowType, type)
         VALUES
-            (#{projectId}, #{projectItemId},
+            (#{userId}, #{projectId}, #{projectItemId},
              #{projectItemTargetId}, #{projectItemTargetRoomId},
              #{deviceId}, now(), #{projectFlowId}, #{flowUserList}, #{state}, #{flowData}, #{createdByUserId}, #{document}, #{receiver}, #{attachment}, #{flowType}, #{type})
     </insert>
@@ -131,6 +139,7 @@
     <update id="update" parameterType="com.bosshand.virgo.api.operate.model.OperateFlowData">
         UPDATE operate_flow_data
         <trim prefix="set" suffixOverrides=",">
+            <if test="userId!=0">userId=#{userId},</if>
             <if test="projectId!=0">projectId=#{projectId},</if>
             <if test="projectItemId!=0">projectItemId=#{projectItemId},</if>
             <if test="projectItemTargetId!=0">projectItemTargetId=#{projectItemTargetId},</if>