Quellcode durchsuchen

合同表单修改

ljy121 vor 1 Jahr
Ursprung
Commit
2f254651a4

+ 3 - 1
zjugis-business/src/main/java/com/zjugis/business/bean/entity/Project.java

@@ -100,7 +100,9 @@ public class Project extends BaseEntity {
     private LocalDateTime flowFinishtime;
 //总合同额
     private BigDecimal contractAmount;
-//总成本
+    // 预估合同额
+    private BigDecimal planContractAmount;
+    //总成本
     private BigDecimal projectCost;
 //总产值
     private BigDecimal outputValue;

+ 10 - 0
zjugis-business/src/main/java/com/zjugis/business/flow/contract/service/FlowContractService.java

@@ -1,12 +1,15 @@
 package com.zjugis.business.flow.contract.service;
 
+import com.alibaba.excel.util.StringUtils;
 import com.alibaba.fastjson2.JSON;
 import com.zjugis.business.bean.entity.Contract;
+import com.zjugis.business.bean.entity.Project;
 import com.zjugis.business.constants.DictConstants;
 import com.zjugis.business.constants.FlowStatusConstants;
 import com.zjugis.business.converter.common.SelectConvert;
 import com.zjugis.business.mapper.ContractMapper;
 import com.zjugis.business.service.ContractService;
+import com.zjugis.business.service.ProjectService;
 import com.zjugis.framework.common.pojo.CommonResult;
 import com.zjugis.framework.security.core.util.SecurityFrameworkUtils;
 import com.zjugis.framework.workflow.model.IFlowInstance;
@@ -37,6 +40,9 @@ public class FlowContractService {
     @Autowired
     ContractService contractService;
 
+    @Autowired
+    ProjectService projectService;
+
     @Autowired
     ContractMapper contractMapper;
 
@@ -73,6 +79,10 @@ public class FlowContractService {
 
     private Map<String, Object>  createMap(Contract entity) {
         Map<String, Object> map = new HashMap<>();
+        if(StringUtils.isNotBlank(entity.getProjectId())){
+            Project project = projectService.selectById(entity.getProjectId());
+            map.put("project",project);
+        }
         map.put("formEntity", entity);
         List<Select> mainTypeList = SelectConvert.INSTANCE.convertList(dictDataApi.getDictDataList(DictConstants.TYPE_CONTRACT_MAIN_TYPE).getCheckedData());
         map.put("mainTypeList", JSON.toJSONString(mainTypeList));

+ 2 - 1
zjugis-business/src/main/java/com/zjugis/business/service/impl/CommonServiceImpl.java

@@ -106,7 +106,8 @@ public class CommonServiceImpl implements CommonService {
         CommonResult<List<CompanyRespDTO>> result = companyApi.getChildCompanyList("0");
         List<CompanyRespDTO> companys = result.getCheckedData();
         List<zTree> zTrees = new ArrayList<>();
-        convertCompany2Ztree(companys,zTrees); String userRes = workflowClient.getUserTree();
+        convertCompany2Ztree(companys,zTrees);
+        String userRes = workflowClient.getUserTree();
         List<zTree> userTree = JSONArray.parseArray(userRes, zTree.class);
         mergeCompanyAndUserTree(userTree,zTrees);
         return zTrees;

+ 13 - 4
zjugis-business/src/main/resources/static/flow/js/formCommon.js

@@ -1,8 +1,15 @@
-function allowChildClick(even, treeNode, clickFlag) {
+function allowUserClick(even, treeNode, clickFlag) {
     if(treeNode.type !== 3){
         return false;
     }
 }
+
+function allowChildClick(even, treeNode, clickFlag) {
+    if(treeNode.isParent){
+        return false;
+    }
+}
+
 function selecttree(selector,data,callback,beforeClick){
     z.ui.selecttree(selector).init({
         panelwidth: 800,
@@ -36,7 +43,7 @@ function selecttree(selector,data,callback,beforeClick){
     });
 }
 
-function selectMutiTree(selector,data,callback,loadSuccess){
+function selectMutiTree(selector,data,callback,loadSuccess,beforeCheck,type){
     z.ui.selecttree(selector).init({
         panelwidth: 1000,
         panelheight: 500,
@@ -59,12 +66,14 @@ function selectMutiTree(selector,data,callback,loadSuccess){
             enable: true
         },
         check: {
-            enable: true
+            enable: true,
+            chkboxType: type
         },
         treedata: data,
         callback: {
             onLoadSuccess: loadSuccess,
-            onCheck: callback
+            onCheck: callback,
+            beforeCheck: beforeCheck
         }
     });
 }

+ 81 - 11
zjugis-business/src/main/resources/templates/FlowContract/apply.ftl

@@ -61,20 +61,18 @@ styles=[ '/flow/css/formCommon.css' ]>
                               </div>
                           </td>
                           <td class="th">
-                              <div class="form-label">签订状态:</div>
+                              <div class="form-label">合同金额(元):</div>
                           </td>
                           <td>
                               <div class="form-group">
-                                  <div class="form-item">
-                                      <div class="z-comp-select" name="contract$isSign"
-                                           data='${isSignList!}'>
-                                          <div class="z-inputselect-bar">
-                                              <span> ${isSign!} </span><i></i>
-                                          </div>
+                                  <div class="form-item btns-form-box">
+                                      <div class="z-comp-input" name="contract$contractAmount">
+                                          <input type="text" value="${formEntity.contractAmount!}">
                                       </div>
                                   </div>
                               </div>
                           </td>
+
                       </tr>
                       <tr>
                           <td class="th">
@@ -134,14 +132,16 @@ styles=[ '/flow/css/formCommon.css' ]>
                       </tr>
                       <tr>
                           <td class="th">
-                              <div class="form-label">事业部独立开拓:</div>
+                              <div class="form-label">签订状态:</div>
                           </td>
                           <td>
                               <div class="form-group">
                                   <div class="form-item">
-                                      <div class="z-comp-radio" name="contract$isBusinessUnit">
-                                          <div class="z-radio-item <#if (formEntity.isBusinessUnit!-1) == 1>checked</#if>" value="1"><i></i>是</div>
-                                          <div class="z-radio-item <#if (formEntity.isBusinessUnit!-1) == 0>checked</#if>" value="0"><i></i>否</div>
+                                      <div class="z-comp-select" name="contract$isSign"
+                                           data='${isSignList!}'>
+                                          <div class="z-inputselect-bar">
+                                              <span> ${isSign!} </span><i></i>
+                                          </div>
                                       </div>
                                   </div>
                               </div>
@@ -162,6 +162,21 @@ styles=[ '/flow/css/formCommon.css' ]>
                               </div>
                           </td>
                       </tr>
+                      <tr>
+                          <td class="th">
+                              <div class="form-label">事业部独立开拓:</div>
+                          </td>
+                          <td>
+                              <div class="form-group">
+                                  <div class="form-item">
+                                      <div class="z-comp-radio" name="contract$isBusinessUnit">
+                                          <div class="z-radio-item <#if (formEntity.isBusinessUnit!-1) == 1>checked</#if>" value="1"><i></i>是</div>
+                                          <div class="z-radio-item <#if (formEntity.isBusinessUnit!-1) == 0>checked</#if>" value="0"><i></i>否</div>
+                                      </div>
+                                  </div>
+                              </div>
+                          </td>
+                      </tr>
                       <tr>
                           <td class="th">
                               <div class="form-label">付款条件:</div>
@@ -1125,6 +1140,61 @@ styles=[ '/flow/css/formCommon.css' ]>
                       </table>
                   </div>
               </div>
+              <div class="form-title">
+                  <div class="form-icon">
+                      <img src="/imgs/titleIcon.png" alt="">
+                      <span>项目信息</span>
+                  </div>
+                  <div class="form-btn">
+                  </div>
+              </div>
+              <div class="qjsjxx-box">
+                  <div class="jbxx-box">
+                      <table class="jbxx-table-info">
+                          <tr>
+                              <td>
+                                  <div class="form-label">项目名称:</div>
+                              </td>
+                              <td colspan="3">
+                                  <div class="form-group">
+                                      <div class="form-item" style="margin: 10px 0;">
+                                          <div class="z-comp-input z-readonly">
+                                              <input type="text" value="${(project.xmmc)!}">
+                                          </div>
+                                      </div>
+                                  </div>
+                              </td>
+                          </tr>
+                          <tr>
+                              <td>
+                                  <div class="form-label">项目编号:</div>
+                              </td>
+                              <td>
+                                  <div class="form-group">
+                                      <div class="form-item" style="margin: 10px 0;">
+                                          <div class="z-comp-input z-readonly">
+                                              <input type="text" value="${(project.xmbh)!}">
+                                          </div>
+                                      </div>
+                                  </div>
+                              </td>
+                              <td>
+                                  <div class="form-label">责任部门:</div>
+                              </td>
+                              <td>
+                                  <div class="form-group">
+                                      <div class="form-item" style="margin: 10px 0;">
+                                          <div class="z-comp-input z-readonly">
+                                              <input type="text" value="${(project.zrbm)!}">
+                                          </div>
+                                      </div>
+                                  </div>
+                              </td>
+                          </tr>
+                      </table>
+                  </div>
+              </div>
+
               <div class="form-title">
                   <div class="form-icon">
                       <img src="/imgs/titleIcon.png" alt="">

+ 10 - 6
zjugis-business/src/main/resources/templates/FlowContract/js/apply.js

@@ -119,11 +119,11 @@
     function initAreaManager(){
         z.ui.ajax({
             type: "get",
-            url: "/common/area-manager-tree",
+            url: "/common/user-tree",
             data: {},
             success: function (res) {
-                if(res && res.code === 0 && res.data.length > 0){
-                    selectMutiTree("[name='areaManager']",res.data,clickAreaManager,setAreaManager)
+                if(res && res.length > 0){
+                    selectMutiTree("[name='areaManager']",res,clickAreaManager,setAreaManager,allowUserClick,{ "Y": "s", "N": "s" })
                 }
             },
             error: function () {
@@ -133,7 +133,9 @@
 
     function setAreaManager(){
         var ids = $("[name='contract$areaManagerId']").val();
-        z.ui.selecttree("[name='areaManager']").setValue(ids.split(","));
+        if(ids){
+            z.ui.selecttree("[name='areaManager']").setValue(ids.split(","));
+        }
     }
 
     function clickAreaManager(even, treeId, treeNode) {
@@ -144,8 +146,10 @@
                 ids.push(nodes[i].id);
                 names.push(nodes[i].name);
             }
-            $("[name='contract$areaManagerId']").val(treeNode.id);
-            $("[name='contract$areaManagerName']").val(treeNode.name);
+            if(ids.length > 0){
+                $("[name='contract$areaManagerId']").val(ids.join(","));
+                $("[name='contract$areaManagerName']").val(names.join(","));
+            }
     }
 
     function clickClient(even, treeId, treeNode) {

+ 1 - 1
zjugis-business/src/main/resources/templates/FlowProject/apply.ftl

@@ -239,4 +239,4 @@
       margin-top: 0;
     }
   </style>
-</@w.workFlow>
+</@w.workFlow>

+ 1 - 0
zjugis-workflow/src/main/java/com/zjugis/z_workflow/utils/zTree.java

@@ -24,6 +24,7 @@ public class zTree {
 	private boolean open = true;
 	private boolean checked;
 	private boolean allowSelect;
+	private boolean nocheck;
 	private Integer type;
 	private String color;
 	private String iconClass;