Przeglądaj źródła

Merge branch 'develop' into 'fix/Process.raido_preview_error'

# Conflicts:
#   o2web/source/x_component_cms_Xform/ModuleImplements.js
#   o2web/source/x_component_cms_Xform/Readerfield.js
#   o2web/source/x_component_process_Xform/Org.js
#   o2web/source/x_component_process_Xform/Orgfield.js
#   o2web/source/x_component_process_Xform/Personfield.js
胡起 5 lat temu
rodzic
commit
e5a9761b6e

+ 2 - 0
o2android/app/src/main/java/net/zoneland/x/bpm/mobile/v1/zoneXBPM/app/meeting/apply/MeetingApplyActivity.kt

@@ -16,6 +16,7 @@ import com.borax12.materialdaterangepicker.time.RadialPickerLayout
 import com.borax12.materialdaterangepicker.time.TimePickerDialog
 import kotlinx.android.synthetic.main.content_meeting_create_form.*
 import net.muliba.fancyfilepickerlibrary.FilePicker
+import net.zoneland.x.bpm.mobile.v1.zoneXBPM.O2SDKManager
 import net.zoneland.x.bpm.mobile.v1.zoneXBPM.R
 import net.zoneland.x.bpm.mobile.v1.zoneXBPM.app.base.BaseMVPActivity
 import net.zoneland.x.bpm.mobile.v1.zoneXBPM.app.meeting.room.MeetingRoomChooseActivity
@@ -204,6 +205,7 @@ class MeetingApplyActivity : BaseMVPActivity<MeetingApplyContract.View, MeetingA
                 savePersonList.remove(invitePersonAdd)
                 info.invitePersonList = savePersonList
                 info.room = roomId
+                info.applicant = O2SDKManager.instance().distinguishedName
                 if (TextUtils.isEmpty(meetingId)) {
                     mPresenter.saveMeetingNoFile(info)
                 } else {

+ 3 - 2
o2android/app/src/main/java/net/zoneland/x/bpm/mobile/v1/zoneXBPM/app/o2/organization/NewOrganizationActivity.kt

@@ -122,11 +122,12 @@ class NewOrganizationActivity : BaseMVPActivity<NewOrganizationContract.View, Ne
             }
 
             override fun clickDepartment(department: NewContactListVO.Department) {
-                XLog.debug("click department ${department.name}")
+                XLog.debug("click department ${department.name} , ${department.id},  ${department.distinguishedName}")
                 val totalChild = department.identityCount + department.departmentCount
                 if (totalChild > 0) {
                     val newLevel = orgLevel + 1
-                    val bean = ContactBreadcrumbBean(department.id, department.name, newLevel)
+                    val deptId = if(TextUtils.isEmpty(department.id)){department.distinguishedName}else{department.id}
+                    val bean = ContactBreadcrumbBean(deptId, department.name, newLevel)
                     breadcrumbBeans.add(bean)
                     refreshOrganizationMain()
                 }

+ 1 - 1
o2android/app/src/main/java/net/zoneland/x/bpm/mobile/v1/zoneXBPM/core/component/enums/HotPictureApplicationEnum.java

@@ -7,7 +7,7 @@ package net.zoneland.x.bpm.mobile.v1.zoneXBPM.core.component.enums;
 public enum HotPictureApplicationEnum {
 
     BBS("BBS", "论坛"),
-    CMS("CMS", "内容管理");
+    CMS("CMS", "信息中心");
 
     private final String key;
     private final String name;

+ 1 - 1
o2android/app/src/main/res/values/strings.xml

@@ -633,7 +633,7 @@
     </string-array>
 
     <!-- cms -->
-    <string name="cms">内容管理</string>
+    <string name="cms">信息中心</string>
     <string name="cms_create">新建</string>
     <string name="title_cms_view">查看文章</string>
     <string name="title_cms_application">栏目</string>

+ 1 - 1
o2server/pom.xml

@@ -380,7 +380,7 @@
 				<artifactId>maven-pmd-plugin</artifactId>
 				<version>3.13.0</version>
 				<configuration>
-					<linkXref>true</linkXref>
+					<linkXRef>true</linkXRef>
 					<sourceEncoding>utf-8</sourceEncoding>
 					<minimumTokens>100</minimumTokens>
 					<targetJdk>1.8</targetJdk>

+ 1 - 1
o2server/start_linux.sh

@@ -146,4 +146,4 @@ if [ -d ${current_dir}/local/update ]; then
 		rm -Rf ${current_dir}/local/update
 	fi
 fi
-setsid ${current_dir}/jvm/linux/bin/java -server -Djava.awt.headless=true -Xms2g -Xmx5g -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -jar ${current_dir}/console.jar
+setsid ${current_dir}/jvm/linux/bin/java -server -Djava.awt.headless=true -Xms2g -Xmx5g -Duser.timezone=GMT+08 -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -jar ${current_dir}/console.jar

+ 1 - 1
o2server/start_windows.bat

@@ -144,5 +144,5 @@ if exist "%~dp0local\update" (
 	)
 )
 @echo on
-"%~dp0jvm\windows\bin\java" -server -Xms2g -Xmx5g -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -jar "%~dp0console.jar"
+"%~dp0jvm\windows\bin\java" -server -Xms2g -Xmx5g -Duser.timezone=GMT+08 -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -jar "%~dp0console.jar"
 pause

+ 4 - 4
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/CategoryInfoAction.java

@@ -233,13 +233,13 @@ public class CategoryInfoAction extends StandardJaxrsAction{
 		asyncResponse.resume(ResponseFactory.getEntityTagActionResultResponse(request, result));
 	}
 	
-	@JaxrsMethodDescribe(value = "根据Flag获取分类信息对象.", action = ActionGet.class)
+	@JaxrsMethodDescribe(value = "根据分类标识Flag获取分类信息对象.", action = ActionGet.class)
 	@GET
 	@Path("{flag}")
 	@Produces(HttpMediaType.APPLICATION_JSON_UTF_8)
 	@Consumes(MediaType.APPLICATION_JSON)
 	public void get( @Suspended final AsyncResponse asyncResponse, @Context HttpServletRequest request, 
-			@JaxrsParameterDescribe("栏目标识") @PathParam("flag") String flag) {
+			@JaxrsParameterDescribe("分类标识") @PathParam("flag") String flag) {
 		EffectivePerson effectivePerson = this.effectivePerson( request );
 		ActionResult<ActionGet.Wo> result = null;
 		try {
@@ -275,13 +275,13 @@ public class CategoryInfoAction extends StandardJaxrsAction{
 		asyncResponse.resume(ResponseFactory.getEntityTagActionResultResponse(request, result));
 	}
 	
-	@JaxrsMethodDescribe(value = "根据别名获取分类信息对象.", action = ActionGet.class)
+	@JaxrsMethodDescribe(value = "根据分类别名获取分类信息对象.", action = ActionGet.class)
 	@GET
 	@Path("alias/{alias}")
 	@Produces(HttpMediaType.APPLICATION_JSON_UTF_8)
 	@Consumes(MediaType.APPLICATION_JSON)
 	public void getByAlias( @Suspended final AsyncResponse asyncResponse, @Context HttpServletRequest request, 
-			@JaxrsParameterDescribe("栏目别名") @PathParam("alias") String alias ) {
+			@JaxrsParameterDescribe("分类别名") @PathParam("alias") String alias ) {
 		EffectivePerson effectivePerson = this.effectivePerson( request );
 		ActionResult<ActionGetByAlias.Wo> result = null;
 		try {

+ 8 - 1
o2server/x_console/src/main/java/com/x/server/console/NodeAgent.java

@@ -3,6 +3,7 @@ package com.x.server.console;
 import java.io.*;
 import java.net.ServerSocket;
 import java.net.Socket;
+import java.nio.charset.StandardCharsets;
 import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -48,6 +49,8 @@ public class NodeAgent extends Thread {
 
 	public static final int LOG_MAX_READ_SIZE = 6 * 1024;
 
+	private static final int BUFFER_SIZE = 1024*1024*1000;
+
 	@Override
 	public void run() {
 		try (ServerSocket serverSocket = new ServerSocket(Config.currentNode().nodeAgentPort())) {
@@ -56,7 +59,11 @@ public class NodeAgent extends Thread {
 				try (Socket socket = serverSocket.accept()) {
 					try (DataOutputStream dos = new DataOutputStream(socket.getOutputStream());
 						 DataInputStream dis = new DataInputStream(socket.getInputStream())) {
-						String json = dis.readUTF();
+						//String json = dis.readUTF();
+						final char[] data = new char[BUFFER_SIZE];
+						final BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream(), StandardCharsets.UTF_8));
+						final int len = br.read(data);
+						final String json = String.valueOf(data, 0, len);
 						//logger.info("receive socket json={}",json);
 						CommandObject commandObject = XGsonBuilder.instance().fromJson(json, CommandObject.class);
 						if (BooleanUtils.isTrue(Config.currentNode().nodeAgentEncrypt())) {

+ 0 - 1
o2server/x_query_core_express/src/main/java/com/x/query/core/express/plan/Plan.java

@@ -87,7 +87,6 @@ public abstract class Plan extends GsonPropertyObject {
 
 	public Integer count;
 
-
 	/**
 	 * !!这个类最后要输出.不能gson scriptEngine对象
 	 * 

+ 27 - 2
o2web/source/x_component_process_Xform/Form.js

@@ -2865,7 +2865,25 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
         var _self = this;
         if (this.json.mode == "Mobile") {
             //window.confirm 在ios移动端不可用 ??
-            if (window.confirm(MWF.xApplication.process.Xform.LP.retractText)) {
+            // if (window.confirm(MWF.xApplication.process.Xform.LP.retractText)) {
+
+            var p = MWF.getCenterPosition(document.body, 300, 150);
+            console.log("position x:" + p.x + " , y:" + p.y);
+            var x = p.x;
+            if (p.x < 20) {
+                x = 20;
+            } else {
+                x = p.x;
+            }
+            var event = {
+                "event": {
+                    "x": x,
+                    "y": p.y - 200,
+                    "clientX": x,
+                    "clientY": p.y - 200
+                }
+            };
+            this.app.confirm("infor", event, MWF.xApplication.process.Xform.LP.retractTitle, MWF.xApplication.process.Xform.LP.retractText, 300, 120, function () {
                 _self.app.content.mask({
                     "style": {
                         "background-color": "#999",
@@ -2897,7 +2915,14 @@ MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
                         if (_self.mask) { _self.mask.hide(); _self.mask = null; }
                     });
                 }.bind(this));
-            }
+            }, function () {
+                this.close();
+            }, null, null, this.json.confirmStyle);
+
+
+
+
+
         } else {
             var p = MWF.getCenterPosition(this.app.content, 300, 150);
             var event = {