Jelajahi Sumber

2021-11-24 9:45 班管家

sjw 4 tahun lalu
induk
melakukan
55fc620c83

+ 57 - 2
src/rest/openapi/restcontroller/hyworkorder/webapp/hyconfirmationorder/MyHyconfirmationorder.java

@@ -7,14 +7,18 @@ import openapi.base.SQLFactory;
 import openapi.base.data.Row;
 import openapi.base.data.Rows;
 import openapi.base.data.db.DBConnect;
+import openapi.restcontroller.wechatapp.system.OBSDocManage;
+import openapi.restcontroller.wechatapp.system.docManage;
+import openapi.tools.obs.BucketFile;
 import org.apache.commons.lang.StringUtils;
+import p2.p2server.P2Server;
 import p2.pao.PaoRemote;
 import p2.pao.PaoSetRemote;
 import p2.util.P2Exception;
+import sun.misc.BASE64Decoder;
 import sun.misc.BASE64Encoder;
 
-import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
+import java.io.*;
 import java.net.HttpURLConnection;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -222,4 +226,55 @@ public class MyHyconfirmationorder extends Controller {
     }
 
 
+    /**base64 上传**/
+    public String GenerateImage(){
+        JSONObject where = content.getJSONObject("where");
+        String s[] = {"imgstr","filename","ownerid"};
+        for (String s1 : s) {
+            if (!where.containsKey(s1) && !StringUtils.isBlank(where.getString(s1)))
+                return getReturnObject_err("缺少" + s1 + "参数").toString();
+        }
+        String imgStr=where.getString("imgstr");
+        BASE64Decoder  decoder = new BASE64Decoder();
+        try {
+            // Base64解码
+            byte[] bytes = decoder.decodeBuffer(imgStr);
+            for (int i = 0; i < bytes.length; ++i) {
+                if (bytes[i] < 0) {// 调整异常数据
+                    bytes[i] += 256;
+                }
+            }
+            BucketFile bucketFile=new BucketFile(siteid);
+            String filename = where.getString("filename");
+            String ftype=filename.substring(filename.lastIndexOf(".")+1,filename.length());
+            String fileName = OBSDocManage.createMD5FileName(filename)+"."+ftype;
+//            System.out.println(imgStr);
+//            BucketFile bucketFile=new BucketFile(siteid);
+//            bucketFile.upload();
+
+//            BucketFile bucketFile=new BucketFile(siteid);
+            bucketFile.upload(fileName, new ByteArrayInputStream(bytes),false);
+            String obsurl = bucketFile.getFileUrl(fileName);
+            // 生成jpeg图片
+            PaoSetRemote tattachmentSet = P2Server.getP2Server().getPaoSet("tattachment", P2Server.getP2Server().getSystemUserInfo());
+            PaoRemote tattachment = tattachmentSet.addAtEnd();
+            tattachment.setValue("siteid", siteid);
+            tattachment.setValue("ownertable", "HYCONFIRMATIONORDER");
+            tattachment.setValue("ownerid", where.getInt("ownerid"));
+            tattachment.setValue("ftype", "default");
+            tattachment.setValue("postfix", ftype);
+            tattachment.setValue("serialnumber", fileName);
+            tattachment.setValue("fdocument", filename);
+            tattachment.setValue("fobsurl", obsurl);
+            tattachment.setValue("type", "确认单预览图");
+            tattachmentSet.save();
+            return getReturnObject_suc().toString();
+        } catch (Exception e) {
+            return getReturnObject_err(e.getMessage()).toString();
+        }
+
+
+    }
+
+
 }