Prechádzať zdrojové kódy

1.职工分页列表中增加单位名称显示。

tomatozq 5 rokov pred
rodič
commit
b893e08bc7

+ 43 - 7
src/main/java/com/jpsoft/smart/modules/base/controller/EmployeeInfoController.java

@@ -21,13 +21,11 @@ import org.springframework.http.MediaType;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
+import sun.misc.BASE64Decoder;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.StringReader;
+import java.io.*;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -263,14 +261,52 @@ public class EmployeeInfoController {
     @ResponseBody
     @ApiOperation(value="员工照片上传")
     @ApiImplicitParams({
+            @ApiImplicitParam(name="photoName",value = "照片名称",required = true,paramType = "form"),
             @ApiImplicitParam(name = "photoFile",value = "员工照片", required = true,paramType="form", dataType = "__file")
     })
-    public MessageResult<String> upload(MultipartFile photoFile){
+    public MessageResult<String> upload(String photoName,MultipartFile photoFile){
         MessageResult<String> messageResult = new MessageResult<>();
 
         try {
-            String fileName = photoFile.getOriginalFilename();
-            String retFileUrl = OSSUtil.upload(ossConfig,"/employee",fileName,photoFile.getInputStream());
+            String retFileUrl = OSSUtil.upload(ossConfig,"/employee",photoName,photoFile.getInputStream());
+
+            messageResult.setResult(true);
+            messageResult.setData(retFileUrl);
+            messageResult.setCode(200);
+        } catch (Exception e) {
+            logger.error(e.getMessage(),e);
+
+            messageResult.setResult(false);
+            messageResult.setMessage(e.getMessage());
+        }
+
+        return messageResult;
+    }
+
+    @PostMapping("mobile/uploadBase64")
+    @ResponseBody
+    @ApiOperation(value="员工照片上传")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="photoName",value = "照片名称",required = true,paramType = "form"),
+            @ApiImplicitParam(name = "photoBase64Data",value = "员工照片base64编码", required = true,paramType="form")
+    })
+    public MessageResult<String> uploadBase64(String photoName,String photoBase64Data){
+        MessageResult<String> messageResult = new MessageResult<>();
+
+        try {
+            BASE64Decoder decoder = new BASE64Decoder();
+
+            byte[] imgData = decoder.decodeBuffer(photoBase64Data);
+
+            for (int i = 0; i < imgData.length; ++i) {
+                if (imgData[i] < 0) {// 调整异常数据
+                    imgData[i] += 256;
+                }
+            }
+
+            ByteArrayInputStream inputStream = new ByteArrayInputStream(imgData);
+
+            String retFileUrl = OSSUtil.upload(ossConfig,"/employee",photoName,inputStream);
 
             messageResult.setResult(true);
             messageResult.setData(retFileUrl);

+ 10 - 0
src/main/java/com/jpsoft/smart/modules/base/entity/EmployeeInfo.java

@@ -38,6 +38,8 @@ public class EmployeeInfo {
 	private Integer sortNo;
 	@ApiModelProperty(value = "openId")
 	private String openId;
+	@ApiModelProperty(value = "companyName")
+	private String companyName;
 
 	/**
 	 *获取员工编号
@@ -194,4 +196,12 @@ public class EmployeeInfo {
 	public void setOpenId(String openId) {
 		this.openId = openId;
 	}
+
+	public String getCompanyName() {
+		return companyName;
+	}
+
+	public void setCompanyName(String companyName) {
+		this.companyName = companyName;
+	}
 }

+ 3 - 1
src/main/resources/mapper/base/EmployeeInfo.xml

@@ -7,6 +7,7 @@
         <id property="id" column="id_"/>
         <result property="name" column="name_"/>
         <result property="companyId" column="company_id"/>
+        <result property="companyName" column="company_name"/>
         <result property="photo" column="photo_"/>
         <result property="no" column="no_"/>
         <result property="createBy" column="create_by"/>
@@ -96,7 +97,8 @@
     </select>
     <select id="search" parameterType="hashmap" resultMap="EmployeeInfoMap">
         <![CDATA[
-			select * from base_employee_info e,base_company_info c
+			select e.*,c.name_ as 'company_name'
+			from base_employee_info e,base_company_info c
 		]]>
         <where>
             e.company_id = c.id_ and c.del_flag=0