java110 лет назад: 4
Родитель
Сommit
264b1cfc41

+ 35 - 35
service-store/src/main/java/com/java110/store/api/ContractApi.java

@@ -364,41 +364,41 @@ public class ContractApi {
     }
 
 
-    /**
-     * 微信删除消息模板
-     *
-     * @param storeId    商户ID
-     * @param expiration 到期合同标记 1 到期合同
-     * @return
-     * @serviceCode /contract/queryContract
-     * @path /app/contract/queryContract
-     */
-    @RequestMapping(value = "/queryContract", method = RequestMethod.GET)
-    public ResponseEntity<String> queryContract(@RequestHeader(value = "store-id") String storeId,
-                                                @RequestParam(value = "state", required = false) String state,
-                                                @RequestParam(value = "expiration", required = false) String expiration,
-                                                @RequestParam(value = "objId", required = false) String objId,
-                                                @RequestParam(value = "contractId", required = false) String contractId,
-                                                @RequestParam(value = "contractNameLike", required = false) String contractNameLike,
-                                                @RequestParam(value = "contractCode", required = false) String contractCode,
-                                                @RequestParam(value = "page") int page,
-                                                @RequestParam(value = "row") int row) {
-        ContractDto contractDto = new ContractDto();
-        contractDto.setPage(page);
-        contractDto.setRow(row);
-        contractDto.setStoreId(storeId);
-        contractDto.setState(state);
-        contractDto.setObjId(objId);
-        contractDto.setContractId(contractId);
-        contractDto.setContractCode(contractCode);
-        contractDto.setContractNameLike(contractNameLike);
-        //如果是到期合同
-        if ("1".equals(expiration)) {
-            contractDto.setNoStates(new String[]{ContractDto.STATE_COMPLAINT, ContractDto.STATE_FAIL});
-            contractDto.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
-        }
-        return getContractBMOImpl.get(contractDto);
-    }
+//    /**
+//     * 微信删除消息模板
+//     *
+//     * @param storeId    商户ID
+//     * @param expiration 到期合同标记 1 到期合同
+//     * @return
+//     * @serviceCode /contract/queryContract
+//     * @path /app/contract/queryContract
+//     */
+//    @RequestMapping(value = "/queryContract", method = RequestMethod.GET)
+//    public ResponseEntity<String> queryContract(@RequestHeader(value = "store-id") String storeId,
+//                                                @RequestParam(value = "state", required = false) String state,
+//                                                @RequestParam(value = "expiration", required = false) String expiration,
+//                                                @RequestParam(value = "objId", required = false) String objId,
+//                                                @RequestParam(value = "contractId", required = false) String contractId,
+//                                                @RequestParam(value = "contractNameLike", required = false) String contractNameLike,
+//                                                @RequestParam(value = "contractCode", required = false) String contractCode,
+//                                                @RequestParam(value = "page") int page,
+//                                                @RequestParam(value = "row") int row) {
+//        ContractDto contractDto = new ContractDto();
+//        contractDto.setPage(page);
+//        contractDto.setRow(row);
+//        contractDto.setStoreId(storeId);
+//        contractDto.setState(state);
+//        contractDto.setObjId(objId);
+//        contractDto.setContractId(contractId);
+//        contractDto.setContractCode(contractCode);
+//        contractDto.setContractNameLike(contractNameLike);
+//        //如果是到期合同
+//        if ("1".equals(expiration)) {
+//            contractDto.setNoStates(new String[]{ContractDto.STATE_COMPLAINT, ContractDto.STATE_FAIL});
+//            contractDto.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+//        }
+//        return getContractBMOImpl.get(contractDto);
+//    }
 
     /**
      * 合同起草待办

+ 103 - 0
service-store/src/main/java/com/java110/store/cmd/contract/QueryContractCmd.java

@@ -0,0 +1,103 @@
+package com.java110.store.cmd.contract;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.contract.ContractDto;
+import com.java110.dto.contractAttr.ContractAttrDto;
+import com.java110.intf.common.IContractApplyUserInnerServiceSMO;
+import com.java110.intf.common.IContractChangeUserInnerServiceSMO;
+import com.java110.intf.store.IContractAttrInnerServiceSMO;
+import com.java110.intf.store.IContractInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.DateUtil;
+import com.java110.vo.ResultVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Java110Cmd(serviceCode = "/contract/queryContract")
+public class QueryContractCmd extends AbstractServiceCmdListener {
+
+    @Autowired
+    private IContractInnerServiceSMO contractInnerServiceSMOImpl;
+
+    @Autowired
+    private IContractAttrInnerServiceSMO contractAttrInnerServiceSMOImpl;
+
+    @Autowired
+    private IContractApplyUserInnerServiceSMO contractApplyUserInnerServiceSMOImpl;
+
+    @Autowired
+    private IContractChangeUserInnerServiceSMO contractChangeUserInnerServiceSMO;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+        super.validatePageInfo(reqJson);
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+        ContractDto contractDto = BeanConvertUtil.covertBean(reqJson, ContractDto.class);
+        //如果是到期合同
+        if ("1".equals(reqJson.getString("expiration"))) {
+            contractDto.setNoStates(new String[]{ContractDto.STATE_COMPLAINT, ContractDto.STATE_FAIL});
+            contractDto.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+        }
+        int count = contractInnerServiceSMOImpl.queryContractsCount(contractDto);
+
+        List<ContractDto> contractDtos = null;
+        if (count > 0) {
+            contractDtos = contractInnerServiceSMOImpl.queryContracts(contractDto);
+            refreshAttr(contractDtos);
+        } else {
+            contractDtos = new ArrayList<>();
+        }
+
+        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) contractDto.getRow()), count, contractDtos);
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+
+        cmdDataFlowContext.setResponseEntity(responseEntity);
+    }
+
+    /**
+     * 属性属性
+     *
+     * @param contractDtos
+     */
+    private void refreshAttr(List<ContractDto> contractDtos) {
+        List<String> contractIds = new ArrayList<>();
+        for (ContractDto contractDto : contractDtos) {
+            contractIds.add(contractDto.getContractId());
+        }
+
+
+        if (contractIds.size() < 1) {
+            return;
+        }
+
+        ContractAttrDto contractAttrDto = new ContractAttrDto();
+        contractAttrDto.setContractIds(contractIds.toArray(new String[contractIds.size()]));
+        List<ContractAttrDto> contractAttrDtos = contractAttrInnerServiceSMOImpl.queryContractAttrs(contractAttrDto);
+
+        List<ContractAttrDto> attrs = null;
+        for (ContractDto contractDto : contractDtos) {
+            attrs = new ArrayList<>();
+            for (ContractAttrDto tmpContractAttrDto : contractAttrDtos) {
+                if (contractDto.getContractId().equals(tmpContractAttrDto.getContractId())) {
+                    attrs.add(tmpContractAttrDto);
+                }
+            }
+            contractDto.setAttrs(attrs);
+        }
+
+
+    }
+}

+ 1 - 1
service-user/src/main/java/com/java110/user/cmd/owner/QueryOwnerCarsCmd.java

@@ -28,7 +28,7 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
-@Java110Cmd(serviceCode = "owner.queryOwnerCars")
+@Java110Cmd(serviceCode = "/contract/queryContract")
 public class QueryOwnerCarsCmd extends AbstractServiceCmdListener {
 
     @Autowired