Explorar el Código

跟进信息完成待办

zhangyao hace 4 meses
padre
commit
ac30fd5e17

BIN
com.awspaas.user.apps.donenow_ctt/lib/com.awspaas.user.apps.donenow_ctt.jar


BIN
com.awspaas.user.apps.donenow_ivt/lib/com.awspaas.user.apps.donenow_ivt.jar


+ 1 - 1
com.awspaas.user.apps.donenow_ivt/src/com/awspaas/user/apps/donenow_ivt/controller/ivtOrderController.java

@@ -448,7 +448,7 @@ public class ivtOrderController {
             map.put("CONTRACT_INFO", CONTRACT_INFO);
             map.put("PROJECT_INFO", PROJECT_INFO);
             map.put("TASK_INFO", TASK_INFO);
-            map.put("PACKINGS", DBSql.getMaps("SELECT DISTINCT A.CONTRACT_COST_ID AS CONTRACTCOSTID, A.QUANTITY, ( SELECT GROUP_CONCAT( SN ) FROM BO_EU_DNCTT_CONTRACT_COST_PRODUCT_SN WHERE CONTRACT_COST_PRODUCT_ID = A.ID ) AS SERIALNUMBER , C.`NAME` AS 'PRODUCTNAME' FROM BO_EU_DNCTT_CONTRACT_COST_PRODUCT A JOIN BO_EU_DNCTT_CONTRACT_COST B ON A.CONTRACT_COST_ID=B.ID JOIN BO_EU_DNIVT_PRODUCT C ON B.PRODUCT_ID=C.ID WHERE  FIND_IN_SET(A.ID,?) ", new Object[]{map.get("CONTRACT_COST_IDS")}));
+            map.put("PACKINGS", DBSql.getMaps("SELECT DISTINCT A.CONTRACT_COST_ID AS CONTRACTCOSTID, A.QUANTITY,GROUP_CONCAT( A.SN ) AS SERIALNUMBER , C.`NAME` AS 'PRODUCTNAME' FROM BO_EU_DNCTT_CONTRACT_COST_PRODUCT A JOIN BO_EU_DNCTT_CONTRACT_COST B ON A.CONTRACT_COST_ID=B.ID JOIN BO_EU_DNIVT_PRODUCT C ON B.PRODUCT_ID=C.ID WHERE  FIND_IN_SET(A.ID,?) ", new Object[]{map.get("CONTRACT_COST_IDS")}));
 
         }
         System.out.println(maps);

+ 106 - 0
com.awspaas.user.apps.donenow_ivt/src/com/awspaas/user/apps/donenow_ivt/event/productCancle.java

@@ -0,0 +1,106 @@
+package com.awspaas.user.apps.donenow_ivt.event;
+
+import com.actionsoft.bpms.bo.engine.BO;
+import com.actionsoft.bpms.bpmn.engine.core.delegate.ProcessExecutionContext;
+import com.actionsoft.bpms.bpmn.engine.listener.ListenerConst;
+import com.actionsoft.bpms.bpmn.engine.listener.ValueListener;
+import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
+import com.actionsoft.bpms.util.DBSql;
+import com.actionsoft.sdk.local.SDK;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import org.apache.commons.lang3.StringUtils;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class productCancle extends ValueListener {
+    /**
+     * 产品注销
+     * @param ctx
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public String execute(ProcessExecutionContext ctx) {
+        //参数获取
+        //记录ID
+        String boId = ctx.getParameterOfString(ListenerConst.FORM_EVENT_PARAM_BOID);
+        //表单ID
+        String formId = ctx.getParameterOfString(ListenerConst.FORM_EVENT_PARAM_FORMID);
+        //BO表名
+        String boName = ctx.getParameterOfString(ListenerConst.FORM_EVENT_PARAM_BONAME);
+        //视图场景获取选中行数据
+        String rowData = ctx.getParameterOfString("$SOURCEDATA");
+        // Ajax方式
+        ResponseObject ro = ResponseObject.newOkResponse();
+        boolean r = true;// 针对业务进行处理
+        System.out.println("productCancle");
+        System.out.println("产品注销");
+        System.out.println("boId:" + boId);
+        System.out.println("formId:" + formId);
+        System.out.println("boName:" + boName);
+        System.out.println("rowData:" + rowData);
+
+        List<String> productIds = new ArrayList<>();
+
+        if (StringUtils.isNotBlank(boId)) productIds.add(boId);
+
+
+        if (StringUtils.isNotBlank(rowData)) {
+            JSONObject rowDataJson = JSONObject.parseObject(rowData);
+            JSONArray data = rowDataJson.getJSONArray("data");
+            if ((data.size() > 0)) for (int i = 0; i < data.size(); i++) {
+                JSONObject jsonObject = data.getJSONObject(i);
+                productIds.add(jsonObject.getString("_ID"));
+            }
+        }
+
+        if (productIds.size() == 0) {
+            ro.msg("请选择注销产品");
+            return ro.toString();
+        }
+        System.out.println("productIds:" + productIds);
+        Connection conn = null;
+        try {
+            conn = DBSql.open();
+            conn.setAutoCommit(false);
+            for (String productId : productIds) {
+                BO bo = SDK.getBOAPI().get("BO_EU_DNIVT_PRODUCT", productId);
+                bo.set("CLOSED", 1);
+                Map<String, Object> params = new HashMap<>();
+                params.put("ID", productId);
+                params.put("CLOSED", 1);
+                dn.recordFormChanges.record(ctx.getUserContext(), "BO_EU_DNIVT_PRODUCT", params, "注销");//记录操作日志
+                SDK.getBOAPI().update("BO_EU_DNIVT_PRODUCT", bo);
+            }
+            conn.commit();
+        } catch (SQLException e) {
+            e.printStackTrace();
+            try {
+                conn.rollback();
+            } catch (SQLException ex) {
+                r = false;
+            }
+        } finally {
+            if (conn != null)
+                DBSql.close(conn);
+        }
+
+        // 处理业务逻辑成功时
+        if (r) {
+            ro.msg("成功");// 返回给服务器的消息
+            // ro.put("key1", "value1").put("key2", "value2");// 放入前端需要的参数
+            return ro.toString();
+        } else {
+            // 错误时
+            ro = ResponseObject.newErrResponse();
+            ro.msg("错误");
+            return ro.toString();
+        }
+    }
+}

+ 1 - 1
com.awspaas.user.apps.donenow_ivt/template/page/PrintPackingList.html

@@ -152,7 +152,7 @@
         let accountId = $("#accountId").val();
         $("#accountInfo").html("");
         $("#accountInfo").html($("#accountId").find("option:selected").text());
-
+        $("#dataTbody").html("");
         $("#otherInfo").html("");
         awsui.ajax.request({
             type: "POST", async: false, dataType: "json",

BIN
com.awspaas.user.apps.donenow_sys/lib/com.awspaas.user.apps.donenow_sys.jar


+ 32 - 9
com.awspaas.user.apps.donenow_sys/src/com/awspaas/user/apps/donenow_sys/controller/udfController.java

@@ -418,9 +418,19 @@ public class udfController {
                 break;
         }
 
-        //什么情况下存待办 ?
-        //activityBo.set("CATE_ID", "30");
-
+        //活动类型
+        /*
+        if (json.containsKey("NETWORK_CATE_ID"))
+            activityBo.set("CATE_ID", json.getString("NETWORK_CATE_ID"));
+         */
+        
+        for (String key : json.keySet()) {
+            String fieldName = key.toUpperCase();
+            if (fieldName.startsWith("NETWORK_")) {
+                fieldName = fieldName.replace("NETWORK_", "");
+                activityBo.set(fieldName, json.get(key));
+            }
+        }
 
         activityBo.set("START_DATE", json.getString("DATE_VALUE"));
         activityBo.set("DESCRIPTION", json.getString("CONTENT"));
@@ -433,11 +443,12 @@ public class udfController {
         activityBo.set("PARENT_ID", PARENT_ID);
 
         //完成待办
-        if (json.containsKey("COMPLETE_TIME") && json.containsKey("COMPLETE_DESCRIPTION")) {
-            activityBo.set("COMPLETE_TIME", json.getString("COMPLETE_TIME"));
-            activityBo.set("COMPLETE_DESCRIPTION", json.getString("COMPLETE_DESCRIPTION"));
+        if (json.containsKey("FINISH_DATE") && json.containsKey("CONTENT")) {
+            activityBo.set("COMPLETE_TIME", json.getString("FINISH_DATE"));
+            activityBo.set("COMPLETE_DESCRIPTION", json.getString("CONTENT"));
             activityBo.set("STATUS_ID", "828");//已完成
-            DBSql.update("update BO_EU_DNCOM_ACTIVITY set COMPLETE_TIME=?,COMPLETE_DESCRIPTION=?,STATUS_ID=? where ID=?", new Object[]{activityBo.get("COMPLETE_TIME"), activityBo.get("COMPLETE_DESCRIPTION"), "828", PARENT_ID});
+            if (StringUtils.isNotBlank(PARENT_ID))
+                DBSql.update("update BO_EU_DNCOM_ACTIVITY set COMPLETE_TIME=?,COMPLETE_DESCRIPTION=?,STATUS_ID=? where ID=?", new Object[]{activityBo.get("COMPLETE_TIME"), activityBo.get("COMPLETE_DESCRIPTION"), "828", PARENT_ID});
         }
 
 
@@ -472,10 +483,9 @@ public class udfController {
      * 信息流查看权限
      * @param userContext
      * @return
-     * @throws IOException
      */
     @Mapping(value = "com.awspaas.user.apps.donenow_sys_network_perm")
-    public ResponseObject networkPerm(UserContext userContext) throws IOException {
+    public ResponseObject networkPerm(UserContext userContext) {
         List<String> permissions = new ArrayList<>();
         Map<String, String> map = new HashMap<>();
         map.put("fd55ab6b-0298-4c94-b26c-a9182d04fa7c", "ACCOUNT");//客户备注-查询
@@ -501,4 +511,17 @@ public class udfController {
         return responseObject;
     }
 
+    /**
+     * 获取联系人
+     * @param userContext
+     * @return
+     */
+    @Mapping(value = "com.awspaas.user.apps.donenow_sys_network_contacts")
+    public ResponseObject networkContacts(UserContext userContext) {
+        String sql = "SELECT USERID AS value,USERNAME as label FROM orguser a join VIEW_EU_SYS_DEPTPATH b  on a.DEPARTMENTID=b.id WHERE  closed=0  and INSTR(b.deptpath,(select id from orgdepartment where DEPARTMENTNO='gsbm' and closed=0 and companyid='" + userContext.getCompanyModel().getId() + "'))>0 ";
+        ResponseObject responseObject = ResponseObject.newOkResponse();
+        responseObject.setData(DBSql.getMaps(sql));
+        return responseObject;
+    }
+
 }

BIN
libs/dn_form_before_save.jar