فهرست منبع

Merge remote-tracking branch 'origin/test' into test

Qchen 1 سال پیش
والد
کامیت
2f8c5c2461
30فایلهای تغییر یافته به همراه752 افزوده شده و 585 حذف شده
  1. 264 416
      insagent.iws
  2. 5 5
      src/main/java/com/ydtech/constants/InsuranceEnum.java
  3. 15 4
      src/main/java/com/ydtech/modules/admin/controller/APPPartnerController.java
  4. 2 2
      src/main/java/com/ydtech/modules/admin/controller/SysUserController.java
  5. 6 4
      src/main/java/com/ydtech/modules/admin/dao/SysAgencyLeaderMapper.java
  6. 8 0
      src/main/java/com/ydtech/modules/admin/dao/SysPartnerMapper.java
  7. 0 8
      src/main/java/com/ydtech/modules/admin/model/SysUser.java
  8. 5 0
      src/main/java/com/ydtech/modules/admin/model/dto/PartnerCountDto.java
  9. 5 0
      src/main/java/com/ydtech/modules/admin/model/vo/LevelPartnerVo.java
  10. 1 1
      src/main/java/com/ydtech/modules/admin/model/vo/PartnerCountVo.java
  11. 0 2
      src/main/java/com/ydtech/modules/admin/model/vo/SysUser2Vo.java
  12. 2 1
      src/main/java/com/ydtech/modules/admin/service/SysPartnerService.java
  13. 150 41
      src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java
  14. 5 3
      src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java
  15. 4 0
      src/main/java/com/ydtech/modules/fnc/dto/contract/ContractDto.java
  16. 4 0
      src/main/java/com/ydtech/modules/fnc/entity/ContractEntity.java
  17. 1 1
      src/main/java/com/ydtech/modules/fnc/service/contract/ContractSupplierService.java
  18. 12 9
      src/main/java/com/ydtech/modules/fnc/service/contract/impl/ContractSupplierServiceImpl.java
  19. 14 11
      src/main/java/com/ydtech/modules/fnc/service/contract/impl/contractServiceImpl.java
  20. 0 5
      src/main/java/com/ydtech/modules/order/components/InsCrawlerOrderComponents.java
  21. 0 20
      src/main/java/com/ydtech/modules/order/controller/ChengTaiOrderApiController.java
  22. 9 7
      src/main/java/com/ydtech/modules/order/controller/QuoteController.java
  23. 66 11
      src/main/java/com/ydtech/modules/order/entity/api/chengtai/request/InsurePremiumRequest.java
  24. 2 0
      src/main/java/com/ydtech/modules/order/entity/api/chengtai/response/InsurePremiumResponse.java
  25. 0 16
      src/main/java/com/ydtech/modules/order/entity/vo/ct/CtQuoteAccidentVo.java
  26. 2 4
      src/main/java/com/ydtech/modules/order/service/ChengTaiOrderApiService.java
  27. 8 10
      src/main/java/com/ydtech/modules/order/service/impl/ChengTaiOrderApiServiceImpl.java
  28. 51 0
      src/main/resources/mapper/modules/admin/SysAgencyLeaderMapper.xml
  29. 103 2
      src/main/resources/mapper/modules/admin/SysPartnerMapper.xml
  30. 8 2
      src/main/resources/mapper/modules/fnc/contract/ContractSupplierMapper.xml

+ 264 - 416
insagent.iws

@@ -1,418 +1,266 @@
 <?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-<project version="4" relativePaths="false"> 
-  <component name="LvcsProjectConfiguration"> 
-    <option name="ADD_LABEL_ON_PROJECT_OPEN" value="true"/>  
-    <option name="ADD_LABEL_ON_PROJECT_COMPILATION" value="true"/>  
-    <option name="ADD_LABEL_ON_FILE_PACKAGE_COMPILATION" value="true"/>  
-    <option name="ADD_LABEL_ON_PROJECT_MAKE" value="true"/>  
-    <option name="ADD_LABEL_ON_RUNNING" value="true"/>  
-    <option name="ADD_LABEL_ON_DEBUGGING" value="true"/>  
-    <option name="ADD_LABEL_ON_UNIT_TEST_PASSED" value="true"/>  
-    <option name="ADD_LABEL_ON_UNIT_TEST_FAILED" value="true"/> 
-  </component>  
-  <component name="PropertiesComponent"> 
-    <property name="MemberChooser.copyJavadoc" value="false"/>  
-    <property name="GoToClass.includeLibraries" value="false"/>  
-    <property name="MemberChooser.showClasses" value="true"/>  
-    <property name="MemberChooser.sorted" value="false"/>  
-    <property name="GoToFile.includeJavaFiles" value="false"/>  
-    <property name="GoToClass.toSaveIncludeLibraries" value="false"/> 
-  </component>  
-  <component name="ToolWindowManager"> 
-    <frame x="-4" y="-4" width="1032" height="746" extended-state="6"/>  
-    <editor active="false"/>  
-    <layout> 
-      <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="-1"/>  
-      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="7"/>  
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="0"/>  
-      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="1"/>  
-      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1"/>  
-      <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="-1"/>  
-      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="6"/>  
-      <window_info id="Aspects" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="-1"/>  
-      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1"/>  
-      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="2"/>  
-      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2"/>  
-      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="4"/>  
-      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="sliding" type="sliding" visible="false" weight="0.4" order="0"/>  
-      <window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2"/>  
-      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="0"/>  
-      <window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="3"/>  
-      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="5"/> 
-    </layout> 
-  </component>  
-  <component name="ErrorTreeViewConfiguration"> 
-    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false"/>  
-    <option name="HIDE_WARNINGS" value="false"/> 
-  </component>  
-  <component name="StructureViewFactory"> 
-    <option name="SORT_MODE" value="0"/>  
-    <option name="GROUP_INHERITED" value="true"/>  
-    <option name="AUTOSCROLL_MODE" value="true"/>  
-    <option name="SHOW_FIELDS" value="true"/>  
-    <option name="AUTOSCROLL_FROM_SOURCE" value="false"/>  
-    <option name="GROUP_GETTERS_AND_SETTERS" value="true"/>  
-    <option name="SHOW_INHERITED" value="false"/>  
-    <option name="HIDE_NOT_PUBLIC" value="false"/> 
-  </component>  
-  <component name="ProjectViewSettings"> 
-    <navigator currentView="ProjectPane" flattenPackages="false" showMembers="false" showStructure="false" autoscrollToSource="false" splitterProportion="0.5"/>  
-    <view id="ProjectPane"> 
-      <expanded_node type="directory" url="file://$PROJECT_DIR$"/> 
-    </view>  
-    <view id="SourcepathPane"/>  
-    <view id="ClasspathPane"/> 
-  </component>  
-  <component name="Commander"> 
-    <leftPanel view="Project"/>  
-    <rightPanel view="Project"/>  
-    <splitter proportion="0.5"/> 
-  </component>  
-  <component name="AspectsView"/>  
-  <component name="SelectInManager"/>  
-  <component name="HierarchyBrowserManager"> 
-    <option name="SHOW_PACKAGES" value="false"/>  
-    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false"/>  
-    <option name="SORT_ALPHABETICALLY" value="false"/> 
-  </component>  
-  <component name="TodoView" selected-index="0"> 
-    <todo-panel id="selected-file"> 
-      <are-packages-shown value="false"/>  
-      <flatten-packages value="false"/>  
-      <is-autoscroll-to-source value="true"/> 
-    </todo-panel>  
-    <todo-panel id="all"> 
-      <are-packages-shown value="true"/>  
-      <flatten-packages value="false"/>  
-      <is-autoscroll-to-source value="true"/> 
-    </todo-panel> 
-  </component>  
-  <component name="editorManager"/>  
-  <component name="editorHistoryManager"/>  
-  <component name="DaemonCodeAnalyzer"> 
-    <disable_hints/> 
-  </component>  
-  <component name="InspectionManager"> 
-    <option name="AUTOSCROLL_TO_SOURCE" value="false"/>  
-    <option name="SPLITTER_PROPORTION" value="0.5"/>  
-    <profile name="Default"/> 
-  </component>  
-  <component name="BookmarkManager"/>  
-  <component name="DebuggerManager"> 
-    <line_breakpoints/>  
-    <exception_breakpoints> 
-      <breakpoint_any> 
-        <option name="NOTIFY_CAUGHT" value="true"/>  
-        <option name="NOTIFY_UNCAUGHT" value="true"/>  
-        <option name="ENABLED" value="false"/>  
-        <option name="SUSPEND_VM" value="true"/>  
-        <option name="COUNT_FILTER_ENABLED" value="false"/>  
-        <option name="COUNT_FILTER" value="0"/>  
-        <option name="CONDITION_ENABLED" value="false"/>  
-        <option name="CONDITION"/>  
-        <option name="LOG_ENABLED" value="false"/>  
-        <option name="LOG_EXPRESSION_ENABLED" value="false"/>  
-        <option name="LOG_MESSAGE"/>  
-        <option name="CLASS_FILTERS_ENABLED" value="false"/>  
-        <option name="INVERSE_CLASS_FILLTERS" value="false"/>  
-        <option name="SUSPEND_POLICY" value="SuspendAll"/> 
-      </breakpoint_any> 
-    </exception_breakpoints>  
-    <field_breakpoints/>  
-    <method_breakpoints/> 
-  </component>  
-  <component name="DebuggerSettings"> 
-    <option name="TRACING_FILTERS_ENABLED" value="true"/>  
-    <option name="TOSTRING_CLASSES_ENABLED" value="false"/>  
-    <option name="VALUE_LOOKUP_DELAY" value="700"/>  
-    <option name="DEBUGGER_TRANSPORT" value="0"/>  
-    <option name="FORCE_CLASSIC_VM" value="true"/>  
-    <option name="HIDE_DEBUGGER_ON_PROCESS_TERMINATION" value="false"/>  
-    <option name="SKIP_SYNTHETIC_METHODS" value="true"/>  
-    <option name="SKIP_CONSTRUCTORS" value="false"/>  
-    <option name="STEP_THREAD_SUSPEND_POLICY" value="SuspendThread"/>  
-    <default_breakpoint_settings> 
-      <option name="NOTIFY_CAUGHT" value="true"/>  
-      <option name="NOTIFY_UNCAUGHT" value="true"/>  
-      <option name="WATCH_MODIFICATION" value="true"/>  
-      <option name="WATCH_ACCESS" value="true"/>  
-      <option name="WATCH_ENTRY" value="true"/>  
-      <option name="WATCH_EXIT" value="true"/>  
-      <option name="ENABLED" value="true"/>  
-      <option name="SUSPEND_VM" value="true"/>  
-      <option name="COUNT_FILTER_ENABLED" value="false"/>  
-      <option name="COUNT_FILTER" value="0"/>  
-      <option name="CONDITION_ENABLED" value="false"/>  
-      <option name="CONDITION"/>  
-      <option name="LOG_ENABLED" value="false"/>  
-      <option name="LOG_EXPRESSION_ENABLED" value="false"/>  
-      <option name="LOG_MESSAGE"/>  
-      <option name="CLASS_FILTERS_ENABLED" value="false"/>  
-      <option name="INVERSE_CLASS_FILLTERS" value="false"/>  
-      <option name="SUSPEND_POLICY" value="SuspendAll"/> 
-    </default_breakpoint_settings>  
-    <filter> 
-      <option name="PATTERN" value="com.sun.*"/>  
-      <option name="ENABLED" value="true"/> 
-    </filter>  
-    <filter> 
-      <option name="PATTERN" value="java.*"/>  
-      <option name="ENABLED" value="true"/> 
-    </filter>  
-    <filter> 
-      <option name="PATTERN" value="javax.*"/>  
-      <option name="ENABLED" value="true"/> 
-    </filter>  
-    <filter> 
-      <option name="PATTERN" value="org.omg.*"/>  
-      <option name="ENABLED" value="true"/> 
-    </filter>  
-    <filter> 
-      <option name="PATTERN" value="sun.*"/>  
-      <option name="ENABLED" value="true"/> 
-    </filter>  
-    <filter> 
-      <option name="PATTERN" value="junit.*"/>  
-      <option name="ENABLED" value="true"/> 
-    </filter> 
-  </component>  
-  <component name="CompilerWorkspaceConfiguration"> 
-    <option name="COMPILE_IN_BACKGROUND" value="false"/>  
-    <option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true"/> 
-  </component>  
-  <component name="RunManager"> 
-    <activeType name="Application"/>  
-    <configuration selected="false" default="true" type="Applet" factoryName="Applet"> 
-      <module name=""/>  
-      <option name="MAIN_CLASS_NAME"/>  
-      <option name="HTML_FILE_NAME"/>  
-      <option name="HTML_USED" value="false"/>  
-      <option name="WIDTH" value="400"/>  
-      <option name="HEIGHT" value="300"/>  
-      <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy"/>  
-      <option name="VM_PARAMETERS"/> 
-    </configuration>  
-    <configuration selected="false" default="true" type="Remote" factoryName="Remote"> 
-      <option name="USE_SOCKET_TRANSPORT" value="true"/>  
-      <option name="SERVER_MODE" value="false"/>  
-      <option name="SHMEM_ADDRESS" value="javadebug"/>  
-      <option name="HOST" value="localhost"/>  
-      <option name="PORT" value="5005"/> 
-    </configuration>  
-    <configuration selected="false" default="true" type="Application" factoryName="Application"> 
-      <option name="MAIN_CLASS_NAME"/>  
-      <option name="VM_PARAMETERS"/>  
-      <option name="PROGRAM_PARAMETERS"/>  
-      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$"/>  
-      <module name=""/> 
-    </configuration>  
-    <configuration selected="false" default="true" type="JUnit" factoryName="JUnit"> 
-      <module name=""/>  
-      <option name="PACKAGE_NAME"/>  
-      <option name="MAIN_CLASS_NAME"/>  
-      <option name="METHOD_NAME"/>  
-      <option name="TEST_OBJECT" value="class"/>  
-      <option name="VM_PARAMETERS"/>  
-      <option name="PARAMETERS"/>  
-      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$"/>  
-      <option name="ADDITIONAL_CLASS_PATH"/>  
-      <option name="TEST_SEARCH_SCOPE"> 
-        <value defaultName="wholeProject"/> 
-      </option> 
-    </configuration> 
-  </component>  
-  <component name="VcsManagerConfiguration"> 
-    <option name="ACTIVE_VCS_NAME" value=""/>  
-    <option name="STATE" value="0"/> 
-  </component>  
-  <component name="VssConfiguration"> 
-    <CheckoutOptions> 
-      <option name="COMMENT" value=""/>  
-      <option name="DO_NOT_GET_LATEST_VERSION" value="false"/>  
-      <option name="REPLACE_WRITABLE" value="false"/>  
-      <option name="RECURSIVE" value="false"/> 
-    </CheckoutOptions>  
-    <CheckinOptions> 
-      <option name="COMMENT" value=""/>  
-      <option name="KEEP_CHECKED_OUT" value="false"/>  
-      <option name="RECURSIVE" value="false"/> 
-    </CheckinOptions>  
-    <AddOptions> 
-      <option name="COMMENT" value=""/>  
-      <option name="STORE_ONLY_LATEST_VERSION" value="false"/>  
-      <option name="CHECK_OUT_IMMEDIATELY" value="false"/>  
-      <option name="FILE_TYPE" value="0"/> 
-    </AddOptions>  
-    <UndocheckoutOptions> 
-      <option name="MAKE_WRITABLE" value="false"/>  
-      <option name="REPLACE_LOCAL_COPY" value="0"/>  
-      <option name="RECURSIVE" value="false"/> 
-    </UndocheckoutOptions>  
-    <DiffOptions> 
-      <option name="IGNORE_WHITE_SPACE" value="false"/>  
-      <option name="IGNORE_CASE" value="false"/> 
-    </DiffOptions>  
-    <GetOptions> 
-      <option name="REPLACE_WRITABLE" value="0"/>  
-      <option name="MAKE_WRITABLE" value="false"/>  
-      <option name="RECURSIVE" value="false"/> 
-    </GetOptions>  
-    <option name="CLIENT_PATH" value=""/>  
-    <option name="SRCSAFEINI_PATH" value=""/>  
-    <option name="USER_NAME" value=""/>  
-    <option name="PWD" value=""/>  
-    <option name="SHOW_CHECKOUT_OPTIONS" value="true"/>  
-    <option name="SHOW_ADD_OPTIONS" value="true"/>  
-    <option name="SHOW_UNDOCHECKOUT_OPTIONS" value="true"/>  
-    <option name="SHOW_DIFF_OPTIONS" value="true"/>  
-    <option name="SHOW_GET_OPTIONS" value="true"/>  
-    <option name="USE_EXTERNAL_DIFF" value="false"/>  
-    <option name="EXTERNAL_DIFF_PATH" value=""/>  
-    <option name="REUSE_LAST_COMMENT" value="false"/>  
-    <option name="PUT_FOCUS_INTO_COMMENT" value="false"/>  
-    <option name="SHOW_CHECKIN_OPTIONS" value="true"/>  
-    <option name="LAST_COMMIT_MESSAGE" value=""/>  
-    <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/> 
-  </component>  
-  <component name="CheckinPanelState"/>  
-  <component name="WebViewSettings"> 
-    <webview flattenPackages="false" showMembers="false" autoscrollToSource="false"/> 
-  </component>  
-  <component name="EjbViewSettings"> 
-    <EjbView showMembers="false" autoscrollToSource="false"/> 
-  </component>  
-  <component name="AppServerRunManager"/>  
-  <component name="StarteamConfiguration"> 
-    <option name="SERVER" value=""/>  
-    <option name="PORT" value="49201"/>  
-    <option name="USER" value=""/>  
-    <option name="PASSWORD" value=""/>  
-    <option name="PROJECT" value=""/>  
-    <option name="VIEW" value=""/>  
-    <option name="ALTERNATIVE_WORKING_PATH" value=""/>  
-    <option name="PUT_FOCUS_INTO_COMMENT" value="false"/>  
-    <option name="SHOW_CHECKIN_OPTIONS" value="true"/>  
-    <option name="LAST_COMMIT_MESSAGE" value=""/>  
-    <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/> 
-  </component>  
-  <component name="Cvs2Configuration"> 
-    <option name="ON_FILE_ADDING" value="0"/>  
-    <option name="ON_FILE_REMOVING" value="0"/>  
-    <option name="PRUNE_EMPTY_DIRECTORIES" value="true"/>  
-    <option name="SHOW_UPDATE_OPTIONS" value="true"/>  
-    <option name="SHOW_ADD_OPTIONS" value="true"/>  
-    <option name="SHOW_REMOVE_OPTIONS" value="true"/>  
-    <option name="MERGING_MODE" value="0"/>  
-    <option name="MERGE_WITH_BRANCH1_NAME" value="HEAD"/>  
-    <option name="MERGE_WITH_BRANCH2_NAME" value="HEAD"/>  
-    <option name="RESET_STICKY" value="false"/>  
-    <option name="CREATE_NEW_DIRECTORIES" value="true"/>  
-    <option name="DEFAULT_TEXT_FILE_SUBSTITUTION" value="kv"/>  
-    <option name="PROCESS_UNKNOWN_FILES" value="false"/>  
-    <option name="PROCESS_DELETED_FILES" value="false"/>  
-    <option name="SHOW_EDIT_DIALOG" value="true"/>  
-    <option name="RESERVED_EDIT" value="false"/>  
-    <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6"/>  
-    <option name="SHOW_CHECKOUT_OPTIONS" value="true"/>  
-    <option name="CHECKOUT_DATE_OR_REVISION_SETTINGS"> 
-      <value> 
-        <option name="BRANCH" value=""/>  
-        <option name="DATE" value=""/>  
-        <option name="USE_BRANCH" value="false"/>  
-        <option name="USE_DATE" value="false"/> 
-      </value> 
-    </option>  
-    <option name="UPDATE_DATE_OR_REVISION_SETTINGS"> 
-      <value> 
-        <option name="BRANCH" value=""/>  
-        <option name="DATE" value=""/>  
-        <option name="USE_BRANCH" value="false"/>  
-        <option name="USE_DATE" value="false"/> 
-      </value> 
-    </option>  
-    <option name="SHOW_CHANGES_REVISION_SETTINGS"> 
-      <value> 
-        <option name="BRANCH" value=""/>  
-        <option name="DATE" value=""/>  
-        <option name="USE_BRANCH" value="false"/>  
-        <option name="USE_DATE" value="false"/> 
-      </value> 
-    </option>  
-    <option name="SHOW_OUTPUT" value="false"/>  
-    <option name="SHOW_FILE_HISTORY_AS_TREE" value="false"/>  
-    <option name="UPDATE_GROUP_BY_PACKAGES" value="false"/>  
-    <option name="ADD_WATCH_INDEX" value="0"/>  
-    <option name="REMOVE_WATCH_INDEX" value="0"/>  
-    <option name="UPDATE_KEYWORD_SUBSTITUTION"/>  
-    <option name="MAKE_NEW_FILES_READONLY" value="false"/>  
-    <option name="SHOW_CORRUPTED_PROJECT_FILES" value="0"/>  
-    <option name="TAG_AFTER_FILE_COMMIT" value="false"/>  
-    <option name="TAG_AFTER_FILE_COMMIT_NAME" value=""/>  
-    <option name="TAG_AFTER_PROJECT_COMMIT" value="false"/>  
-    <option name="TAG_AFTER_PROJECT_COMMIT_NAME" value=""/>  
-    <option name="PUT_FOCUS_INTO_COMMENT" value="false"/>  
-    <option name="SHOW_CHECKIN_OPTIONS" value="true"/>  
-    <option name="FORCE_NON_EMPTY_COMMENT" value="false"/>  
-    <option name="LAST_COMMIT_MESSAGE" value=""/>  
-    <option name="SAVE_LAST_COMMIT_MESSAGE" value="true"/>  
-    <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/>  
-    <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false"/>  
-    <option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false"/>  
-    <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false"/>  
-    <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false"/>  
-    <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8"/>  
-    <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5"/> 
-  </component>  
-  <component name="CvsTabbedWindow"/>  
-  <component name="SvnConfiguration"> 
-    <option name="USER" value=""/>  
-    <option name="PASSWORD" value=""/>  
-    <option name="AUTO_ADD_FILES" value="0"/>  
-    <option name="AUTO_DEL_FILES" value="0"/> 
-  </component>  
-  <component name="PerforceConfiguration"> 
-    <option name="PORT" value="magic:1666"/>  
-    <option name="USER" value=""/>  
-    <option name="PASSWORD" value=""/>  
-    <option name="CLIENT" value=""/>  
-    <option name="TRACE" value="false"/>  
-    <option name="PERFORCE_STATUS" value="true"/>  
-    <option name="CHANGELIST_OPTION" value="false"/>  
-    <option name="SYSTEMROOT" value=""/>  
-    <option name="P4_EXECUTABLE" value="p4"/>  
-    <option name="SHOW_BRANCH_HISTORY" value="false"/>  
-    <option name="GENERATE_COMMENT" value="false"/>  
-    <option name="SYNC_OPTION" value="Sync"/>  
-    <option name="PUT_FOCUS_INTO_COMMENT" value="false"/>  
-    <option name="SHOW_CHECKIN_OPTIONS" value="true"/>  
-    <option name="FORCE_NON_EMPTY_COMMENT" value="true"/>  
-    <option name="LAST_COMMIT_MESSAGE" value=""/>  
-    <option name="SAVE_LAST_COMMIT_MESSAGE" value="true"/>  
-    <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8"/>  
-    <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false"/>  
-    <option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false"/>  
-    <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false"/>  
-    <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false"/>  
-    <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8"/>  
-    <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5"/> 
-  </component> 
+<project version="4">
+  <component name="AutoImportSettings">
+    <option name="autoReloadType" value="SELECTIVE" />
+  </component>
+  <component name="ChangeListManager">
+    <list default="true" id="53f4ce76-8f52-4619-adfd-07826e7111a7" name="Changes" comment="代理人app开发">
+      <change beforePath="$PROJECT_DIR$/insagent.iws" beforeDir="false" afterPath="$PROJECT_DIR$/insagent.iws" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/controller/ChengTaiOrderApiController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/controller/ChengTaiOrderApiController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/controller/QuoteController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/controller/QuoteController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/entity/api/chengtai/request/InsurePremiumRequest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/entity/api/chengtai/request/InsurePremiumRequest.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/entity/api/chengtai/response/InsurePremiumResponse.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/entity/api/chengtai/response/InsurePremiumResponse.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/entity/vo/ct/CtQuoteAccidentVo.java" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/service/ChengTaiOrderApiService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/service/ChengTaiOrderApiService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/service/impl/ChengTaiOrderApiServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/service/impl/ChengTaiOrderApiServiceImpl.java" afterDir="false" />
+    </list>
+    <list id="bc6cb0c2-9167-463c-ac43-267792d14a4c" name="New changelist" comment="New changelist">
+      <change afterPath="$PROJECT_DIR$/qodana.yaml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/insagent.ipr" beforeDir="false" afterPath="$PROJECT_DIR$/insagent.ipr" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/insagent.iws" beforeDir="false" afterPath="$PROJECT_DIR$/insagent.iws" afterDir="false" />
+    </list>
+    <option name="SHOW_DIALOG" value="false" />
+    <option name="HIGHLIGHT_CONFLICTS" value="true" />
+    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+    <option name="LAST_RESOLUTION" value="IGNORE" />
+  </component>
+  <component name="Git.Settings">
+    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+  </component>
+  <component name="KubernetesApiPersistence">{}</component>
+  <component name="KubernetesApiProvider">{
+  &quot;isMigrated&quot;: true
+}</component>
+  <component name="LineStatusTrackerManager">
+    <file path="$PROJECT_DIR$/insagent.iws">
+      <ranges>
+        <range start1="1" end1="417" start2="1" end2="265" changelist="53f4ce76-8f52-4619-adfd-07826e7111a7" />
+        <range start1="418" end1="419" start2="266" end2="266" changelist="bc6cb0c2-9167-463c-ac43-267792d14a4c" />
+      </ranges>
+    </file>
+  </component>
+  <component name="MavenImportPreferences">
+    <option name="generalSettings">
+      <MavenGeneralSettings>
+        <option name="customMavenHome" value="D:\apache-maven-3.9.8" />
+        <option name="localRepository" value="D:\apache-maven-3.9.8\repo" />
+        <option name="mavenHomeTypeForPersistence" value="CUSTOM" />
+        <option name="userSettingsFile" value="D:\apache-maven-3.9.8\conf\settings.xml" />
+      </MavenGeneralSettings>
+    </option>
+  </component>
+  <component name="ProblemsViewState">
+    <option name="selectedTabId" value="CurrentFile" />
+  </component>
+  <component name="ProjectColorInfo">{
+  &quot;associatedIndex&quot;: 2
+}</component>
+  <component name="ProjectId" id="2oXovegNMCtkb5nu9fEuukn588V" />
+  <component name="ProjectViewState">
+    <option name="hideEmptyMiddlePackages" value="true" />
+    <option name="showLibraryContents" value="true" />
+  </component>
+  <component name="PropertiesComponent"><![CDATA[{
+  "keyToString": {
+    "Application.SpringInsApplication.executor": "Debug",
+    "Maven.SpringInsApplication.executor": "Debug",
+    "Maven.insagent [clean,install,--non-recursive].executor": "Run",
+    "Maven.insagent [clean].executor": "Run",
+    "Maven.insagent [install,--non-recursive].executor": "Run",
+    "Maven.insagent [install].executor": "Run",
+    "Maven.insagent [package].executor": "Run",
+    "RunOnceActivity.ShowReadmeOnStart": "true",
+    "git-widget-placeholder": "test",
+    "kotlin-language-version-configured": "true",
+    "last_opened_file_path": "D:/ideaiu_project/dxService",
+    "node.js.detected.package.eslint": "true",
+    "node.js.selected.package.eslint": "(autodetect)",
+    "node.js.selected.package.tslint": "(autodetect)",
+    "nodejs_package_manager_path": "npm",
+    "project.structure.last.edited": "Global Libraries",
+    "project.structure.proportion": "0.15",
+    "project.structure.side.proportion": "0.41479635",
+    "settings.editor.selected.configurable": "project.propCompiler",
+    "vue.rearranger.settings.migration": "true"
+  }
+}]]></component>
+  <component name="ReactorSettings">
+    <option name="notificationShown" value="true" />
+  </component>
+  <component name="RunManager">
+    <configuration name="SpringInsApplication" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
+      <option name="MAIN_CLASS_NAME" value="com.ydtech.SpringInsApplication" />
+      <module name="insagent" />
+      <extension name="coverage">
+        <pattern>
+          <option name="PATTERN" value="com.ydtech.*" />
+          <option name="ENABLED" value="true" />
+        </pattern>
+      </extension>
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
+    <configuration default="true" type="JetRunConfigurationType">
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
+    <configuration default="true" type="KotlinStandaloneScriptRunConfigurationType">
+      <option name="filePath" />
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
+    <recent_temporary>
+      <list>
+        <item itemvalue="Application.SpringInsApplication" />
+      </list>
+    </recent_temporary>
+  </component>
+  <component name="SharedIndexes">
+    <attachedChunks>
+      <set>
+        <option value="bundled-jdk-9823dce3aa75-b114ca120d71-intellij.indexing.shared.core-IU-242.20224.387" />
+        <option value="bundled-js-predefined-d6986cc7102b-410509235cf1-JavaScript-IU-242.20224.387" />
+      </set>
+    </attachedChunks>
+  </component>
+  <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
+  <component name="TaskManager">
+    <task active="true" id="Default" summary="Default task">
+      <changelist id="53f4ce76-8f52-4619-adfd-07826e7111a7" name="Changes" comment="" />
+      <changelist id="bc6cb0c2-9167-463c-ac43-267792d14a4c" name="New changelist" comment="" />
+      <created>1731025512826</created>
+      <option name="number" value="Default" />
+      <option name="presentableId" value="Default" />
+      <updated>1731025512826</updated>
+      <workItem from="1731025513988" duration="2700000" />
+      <workItem from="1731028251317" duration="37000" />
+      <workItem from="1731028294472" duration="3000" />
+      <workItem from="1731028308592" duration="371000" />
+      <workItem from="1731028689773" duration="136000" />
+      <workItem from="1731028834493" duration="17128000" />
+      <workItem from="1731284394559" duration="28432000" />
+      <workItem from="1731371502249" duration="24475000" />
+      <workItem from="1731457864520" duration="15321000" />
+      <workItem from="1731556015076" duration="8482000" />
+      <workItem from="1731630850533" duration="13069000" />
+      <workItem from="1731888634067" duration="15457000" />
+    </task>
+    <task id="LOCAL-00001" summary="代理人app开发">
+      <option name="closed" value="true" />
+      <created>1731458148781</created>
+      <option name="number" value="00001" />
+      <option name="presentableId" value="LOCAL-00001" />
+      <option name="project" value="LOCAL" />
+      <updated>1731458148781</updated>
+    </task>
+    <option name="localTasksCounter" value="2" />
+    <servers />
+  </component>
+  <component name="TypeScriptGeneratedFilesManager">
+    <option name="version" value="3" />
+  </component>
+  <component name="UnknownFeatures">
+    <option featureType="dependencySupport" implementationName="java:org.springframework:spring-core" />
+    <option featureType="dependencySupport" implementationName="java:jakarta.validation:jakarta.validation-api" />
+    <option featureType="dependencySupport" implementationName="java:org.seleniumhq.selenium:selenium-java" />
+    <option featureType="dependencySupport" implementationName="java:io.projectreactor:reactor-core" />
+    <option featureType="dependencySupport" implementationName="java:org.springframework.data:spring-data-commons" />
+    <option featureType="dependencySupport" implementationName="executable:kubectl" />
+    <option featureType="dependencySupport" implementationName="java:org.hibernate.validator:hibernate-validator" />
+    <option featureType="dependencySupport" implementationName="java:javax.validation:validation-api" />
+    <option featureType="dependencySupport" implementationName="java:org.springframework:spring-webmvc" />
+    <option featureType="dependencySupport" implementationName="java:org.projectlombok:lombok" />
+    <option featureType="dependencySupport" implementationName="java:org.springframework:spring-websocket" />
+    <option featureType="dependencySupport" implementationName="executable:docker" />
+    <option featureType="dependencySupport" implementationName="java:io.reactivex.rxjava3:rxjava" />
+    <option featureType="dependencySupport" implementationName="java:org.thymeleaf:thymeleaf" />
+    <option featureType="dependencySupport" implementationName="java:org.springframework:spring-messaging" />
+    <option featureType="dependencySupport" implementationName="java:org.springframework.boot:spring-boot" />
+  </component>
+  <component name="Vcs.Log.History.Properties">
+    <option name="COLUMN_ID_ORDER">
+      <list>
+        <option value="Default.Root" />
+        <option value="Default.Author" />
+        <option value="Default.Date" />
+        <option value="Default.Subject" />
+        <option value="GitHub.CommitStatus" />
+      </list>
+    </option>
+  </component>
+  <component name="Vcs.Log.Tabs.Properties">
+    <option name="RECENT_FILTERS">
+      <map>
+        <entry key="User">
+          <value>
+            <list>
+              <RecentGroup>
+                <option name="FILTER_VALUES">
+                  <option value="Qchen" />
+                </option>
+              </RecentGroup>
+              <RecentGroup>
+                <option name="FILTER_VALUES">
+                  <option value="*" />
+                </option>
+              </RecentGroup>
+            </list>
+          </value>
+        </entry>
+      </map>
+    </option>
+    <option name="TAB_STATES">
+      <map>
+        <entry key="MAIN">
+          <value>
+            <State />
+          </value>
+        </entry>
+      </map>
+    </option>
+  </component>
+  <component name="VcsManagerConfiguration">
+    <MESSAGE value="代理人app开发" />
+    <MESSAGE value="New changelist" />
+    <option name="LAST_COMMIT_MESSAGE" value="New changelist" />
+  </component>
+  <component name="XDebuggerManager">
+    <breakpoint-manager>
+      <breakpoints>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/ydtech/modules/esm/service/impl/EsmUserReferrerServiceImpl.java</url>
+          <line>346</line>
+          <option name="timeStamp" value="1" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/ydtech/modules/esm/service/impl/EsmUserReferrerServiceImpl.java</url>
+          <line>356</line>
+          <option name="timeStamp" value="2" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/ydtech/modules/admin/components/UnionPayRequestApiComponent.java</url>
+          <line>283</line>
+          <option name="timeStamp" value="3" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/ydtech/modules/admin/components/UnionPayRequestApiComponent.java</url>
+          <line>189</line>
+          <option name="timeStamp" value="5" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/ydtech/modules/admin/components/UnionPayRequestApiComponent.java</url>
+          <line>187</line>
+          <option name="timeStamp" value="6" />
+        </line-breakpoint>
+        <line-breakpoint enabled="true" type="java-line">
+          <url>file://$PROJECT_DIR$/src/main/java/com/ydtech/modules/order/controller/QuoteController.java</url>
+          <line>228</line>
+          <option name="timeStamp" value="14" />
+        </line-breakpoint>
+      </breakpoints>
+    </breakpoint-manager>
+  </component>
 </project>

+ 5 - 5
src/main/java/com/ydtech/constants/InsuranceEnum.java

@@ -32,7 +32,7 @@ public enum InsuranceEnum {
     CHAC("CHAC", "诚泰财产保险股份有限公司", "chengtai"),
     CICP("CICP", "中华联合财产保险股份有限公司", ""),
     CJCX("CJCX", "长江财产保险股份有限公司", ""),
-    CPIC("CPIC", "中国太平洋财产保险股份有限公司", ""),
+    CPIC("CPIC", "中国太平洋财产保险股份有限公司", "taipingyang"),
     CRCI("CRCI", "中国铁路财产保险自保有限公司", ""),
     CRIC("CRIC", "富德财产保险股份有限公司", ""),
     DBIC("DBIC", "都邦财产保险股份有限公司", ""),
@@ -47,7 +47,7 @@ public enum InsuranceEnum {
     HBIC("HBIC", "恒邦财产保险股份有限公司", "hengbang"),
     HGIC("HGIC", "海峡金桥财产保险股份有限公司", ""),
     HHBX("HHBX", "华海财产保险股份有限公司", ""),
-    HNIC("HNIC", "华农财产保险股份有限公司", ""),
+    HNIC("HNIC", "华农财产保险股份有限公司", "huanong"),
     HTIC("HTIC", "华泰财产保险有限公司", "huatai"),
     HYIC("HYIC", "现代财产保险(中国)有限公司", ""),
     JLIC("JLIC", "久隆财产保险有限公司", ""),
@@ -63,10 +63,10 @@ public enum InsuranceEnum {
     SMIC("SMIC", "阳光农业相互保险公司", ""),
     SPIC("SPIC", "三星财产保险(中国)有限公司", ""),
     TAIC("TAIC", "天安财产保险股份有限公司", ""),
-    TKIC("TKIC", "泰康在线财产保险股份有限公司", ""),
+    TKIC("TKIC", "泰康在线财产保险股份有限公司", "taikang"),
     TMNF("TMNF", "东京海上日动火灾保险(中国)有限公司", ""),
-    TPBX("TPBX", "安盛天平财产保险股份有限公司", ""),
-    TPIC("TPIC", "太平财产保险有限公司", ""),
+    TPBX("TPBX", "安盛天平财产保险股份有限公司", "ansheng"),
+    TPIC("TPIC", "太平财产保险有限公司", "taiping"),
     TSBX("TSBX", "泰山财产保险股份有限公司", ""),
     ULIC("ULIC", "合众财产保险股份有限公司", ""),
     UTIC("UTIC", "众诚汽车保险股份有限公司", ""),

+ 15 - 4
src/main/java/com/ydtech/modules/admin/controller/APPPartnerController.java

@@ -180,6 +180,18 @@ public class APPPartnerController extends BaseController {
 
         return HttpResult.ok("success",this.sysPartnerService.getPartnerCount(partnerCountDto));
     }
+
+    /**
+     *  五级合伙人新增人员统计
+     */
+    @PostMapping("/getFivePartnerCount")
+    @ApiOperation(value = "五级合伙人新增人员统计")
+    public HttpResult<PartnerCountVo> getFivePartnerCount(@RequestBody PartnerCountDto partnerCountDto) {
+
+        return HttpResult.ok("success",this.sysPartnerService.getFivePartnerCount(partnerCountDto));
+    }
+
+
     /**
      * 新增人员占比分析
      */
@@ -202,14 +214,13 @@ public class APPPartnerController extends BaseController {
 
     /**
      * 排行榜->查看详情
-     * @param userId
      * @return
      */
-    @GetMapping("/getLevelPartnerInfo")
+    @PostMapping("/getLevelPartnerInfo")
     @ApiOperation(value = "排行榜->查看详情")
-    public HttpResult<PartnerInfoFreeVo> getLevelPartnerInfo(@RequestParam("userId") String userId) {
+    public HttpResult<PartnerInfoFreeVo> getLevelPartnerInfo(@RequestBody List<String> partnerIds) {
 
-        return HttpResult.ok("success",this.sysPartnerService.getLevelPartnerInfo(userId));
+        return HttpResult.ok("success",this.sysPartnerService.getLevelPartnerInfo(partnerIds));
     }
 
 

+ 2 - 2
src/main/java/com/ydtech/modules/admin/controller/SysUserController.java

@@ -929,8 +929,8 @@ public class SysUserController extends BaseController {
         SysUser sysUser = sysUserVo.getSysUser();
         if (sysUserVo.getIsPartner() != null && sysUserVo.getIsPartner().equals("1")) {
             SysUserInfo sysUserInfo = new SysUserInfo();
-            SysUser partnerId = sysUserService.getById(sysUserVo.getSysUser().getReferrerId());
-            sysUser.setDeptId(partnerId.getDeptId());
+            SysUser sysUser1 = sysUserService.getById(sysUserVo.getSysUser().getReferrerId());
+            sysUser.setDeptId(sysUser1.getDeptId());
             sysUser.setStatus(2); //直接默认为入司待审核
             LocalDate birthday = LocalDate.parse(sysUser.getIdentity().substring(6, 10) + "-" + sysUser.getIdentity().substring(10, 12) + "-" + sysUser.getIdentity().substring(12, 14));
             sysUserInfo.setBirthday(birthday);

+ 6 - 4
src/main/java/com/ydtech/modules/admin/dao/SysAgencyLeaderMapper.java

@@ -4,11 +4,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ydtech.modules.admin.model.SysAgencyLeader;
-import com.ydtech.modules.admin.model.dto.AgencyUserInsAreaDto;
-import com.ydtech.modules.admin.model.dto.DeptBalanceDto;
-import com.ydtech.modules.admin.model.dto.SysAgencyLeaderListDto;
-import com.ydtech.modules.admin.model.dto.SysAgencyLeaderPageDto;
+import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.vo.AgencyUserInsAreaVo;
+import com.ydtech.modules.admin.model.vo.CountUserNumVo;
 import com.ydtech.modules.admin.model.vo.DeptBalanceVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -51,5 +49,9 @@ public interface SysAgencyLeaderMapper extends BaseMapper<SysAgencyLeader> {
     IPage<SysAgencyLeader> queryLeaderPage(Page page,@Param("dto") SysAgencyLeaderPageDto sysAgencyLeaderPageDto);
 
     int updateByIds(@Param("dto") SysAgencyLeaderListDto sysAgencyLeaderDto);
+
+    List<CountUserNumVo> queryWorkByFive(@Param("workIds") List<String> workIds,@Param("dto") PartnerCountDto partnerCountDto);
+
+    List<CountUserNumVo> queryWorkByFiveTime(@Param("workIds") List<String> workIds,@Param("dto") PartnerCountDto partnerCountDto);
 }
 

+ 8 - 0
src/main/java/com/ydtech/modules/admin/dao/SysPartnerMapper.java

@@ -49,5 +49,13 @@ public interface SysPartnerMapper extends BaseMapper<SysPartner> {
     List<CountUserNumVo> queryPartnerByTimes(@Param("userId") String userId,@Param("dto") PartnerCountDto partnerCountDto);
 
     List<CountUserNumVo> queryPartnerByTime(@Param("userId") String userId,@Param("dto") PartnerCountDto partnerCountDto);
+
+    List<CountUserNumVo> queryDeptByFive(@Param("deptIds") List<String> deptIds, @Param("dto") PartnerCountDto partnerCountDto);
+
+    List<CountUserNumVo> queryDeptByFiveTime(@Param("deptIds") List<String> deptIds,@Param("dto") PartnerCountDto partnerCountDto);
+
+    List<CountUserNumVo> queryUserByFive(@Param("deptIds") List<String> deptIds,@Param("dto") PartnerCountDto partnerCountDto);
+
+    List<CountUserNumVo> queryUserByFiveTime(@Param("deptIds") List<String> deptIds,@Param("dto")  PartnerCountDto partnerCountDto);
 }
 

+ 0 - 8
src/main/java/com/ydtech/modules/admin/model/SysUser.java

@@ -236,14 +236,6 @@ public class SysUser extends BaseEntity {
     @ApiModelProperty(value = "合伙人等级;1,2,3,4,5")
     private Integer level;
 
-    @ApiModelProperty(value = "推荐人id")
-    @TableField(exist = false)
-    private String suggestId;
-
-    @ApiModelProperty(value = "推荐人name")
-    @TableField(exist = false)
-    private String suggestName;
-
     @ApiModelProperty(value = "申请机构来源 1 渠道 2 个代")
     @TableField(value = "dept_source")
     private String deptSource;

+ 5 - 0
src/main/java/com/ydtech/modules/admin/model/dto/PartnerCountDto.java

@@ -14,6 +14,11 @@ public class PartnerCountDto {
 
     @ApiModelProperty(value = "合伙人等级类型:1,2,3,4,5")
     private int type;
+    /**
+     * 五级合伙人参数
+     */
+    @ApiModelProperty(value = "类型:1:工作室,2:团队 3:代理人")
+    private int number;
 
 
 }

+ 5 - 0
src/main/java/com/ydtech/modules/admin/model/vo/LevelPartnerVo.java

@@ -3,6 +3,8 @@ package com.ydtech.modules.admin.model.vo;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 @Data
 public class LevelPartnerVo {
 
@@ -14,4 +16,7 @@ public class LevelPartnerVo {
 
     @ApiModelProperty(value = "人数")
     private int deptManNum;
+
+    @ApiModelProperty(value = "下级合伙人的所有id")
+    private List<String> PartnerIds;
 }

+ 1 - 1
src/main/java/com/ydtech/modules/admin/model/vo/PartnerCountVo.java

@@ -28,7 +28,7 @@ public class PartnerCountVo {
 
     @ApiModelProperty(value = "团队人数")
     private Integer deptManSum;
-
+    @ApiModelProperty(value = "曲线图")
     private List<CountUserNumVo> countUserNumVoList;
 
 }

+ 0 - 2
src/main/java/com/ydtech/modules/admin/model/vo/SysUser2Vo.java

@@ -25,8 +25,6 @@ public class SysUser2Vo {
     @ApiModelProperty("是否是合伙人")
     private String isPartner;
 
-    @ApiModelProperty("推荐人Id")
-    private String referrerId;
 
     @ApiModelProperty("影像信息")
     private List<EsmUserImageVo> esmUserImageVo;

+ 2 - 1
src/main/java/com/ydtech/modules/admin/service/SysPartnerService.java

@@ -70,6 +70,7 @@ public interface SysPartnerService extends IService<SysPartner> {
     CountUserVo getCountUser(CountUserDto countUserDto);
 
     PartnerCountVo getPartnerCount(PartnerCountDto partnerCountDto);
+    PartnerCountVo getFivePartnerCount(PartnerCountDto partnerCountDto);
 
     PartnerProportionVo getPartnerProportion(PartnerCountDto partnerCountDto);
 
@@ -87,5 +88,5 @@ public interface SysPartnerService extends IService<SysPartner> {
 
     String checkBindWechat();
 
-    PartnerInfoFreeVo getLevelPartnerInfo(String userId);
+    PartnerInfoFreeVo getLevelPartnerInfo(List<String> partnerIds);
 }

+ 150 - 41
src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java

@@ -1783,48 +1783,49 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
         partnerCountDto.setType(type + partnerCountDto.getType());
         //查询登陆人下所有合伙人
         List<SysPartner> sysPartnerList = sysPartnerMapper.queryPartnerById(userId, partnerCountDto);
-        if (CollectionUtil.isEmpty(sysPartnerList)) return partnerCountVo;
-
-
-        //统计每一个等级的合伙人数
-        if (type == 1) {
-            //1
-            List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
-            partnerCountVo.setOnePartnerNum(onePartners.size());
-            //2
-            List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
-            partnerCountVo.setTwoPartnerNum(twoPartners.size());
-            //3
-            List<SysPartner> threePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 3).collect(Collectors.toList());
-            partnerCountVo.setThreePartnerNum(threePartners.size());
-            //4
-            List<SysPartner> fourPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 4).collect(Collectors.toList());
-            partnerCountVo.setFourPartnerNum(fourPartners.size());
-
-        } else if (type == 2) {
-            //1
-            List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
-            partnerCountVo.setOnePartnerNum(onePartners.size());
-            //2
-            List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
-            partnerCountVo.setTwoPartnerNum(twoPartners.size());
-            //3
-            List<SysPartner> threePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 3).collect(Collectors.toList());
-            partnerCountVo.setThreePartnerNum(threePartners.size());
+        if (CollectionUtil.isNotEmpty(sysPartnerList)){
+            //统计每一个等级的合伙人数
+            if (type == 1) {
+                //1
+                List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
+                partnerCountVo.setOnePartnerNum(onePartners.size());
+                //2
+                List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
+                partnerCountVo.setTwoPartnerNum(twoPartners.size());
+                //3
+                List<SysPartner> threePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 3).collect(Collectors.toList());
+                partnerCountVo.setThreePartnerNum(threePartners.size());
+                //4
+                List<SysPartner> fourPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 4).collect(Collectors.toList());
+                partnerCountVo.setFourPartnerNum(fourPartners.size());
+
+            } else if (type == 2) {
+                //1
+                List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
+                partnerCountVo.setOnePartnerNum(onePartners.size());
+                //2
+                List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
+                partnerCountVo.setTwoPartnerNum(twoPartners.size());
+                //3
+                List<SysPartner> threePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 3).collect(Collectors.toList());
+                partnerCountVo.setThreePartnerNum(threePartners.size());
+
+            } else if (type == 3) {
+                //1
+                List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
+                partnerCountVo.setOnePartnerNum(onePartners.size());
+                //2
+                List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
+                partnerCountVo.setTwoPartnerNum(twoPartners.size());
+
+            } else if (type == 4) {
+                //1
+                List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
+                partnerCountVo.setOnePartnerNum(onePartners.size());
+            }
+        }
 
-        } else if (type == 3) {
-            //1
-            List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
-            partnerCountVo.setOnePartnerNum(onePartners.size());
-            //2
-            List<SysPartner> twoPartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 2).collect(Collectors.toList());
-            partnerCountVo.setTwoPartnerNum(twoPartners.size());
 
-        } else if (type == 4) {
-            //1
-            List<SysPartner> onePartners = sysPartnerList.stream().filter(SysPartner -> SysPartner.getType() == type + 1).collect(Collectors.toList());
-            partnerCountVo.setOnePartnerNum(onePartners.size());
-        }
         //工作室
         List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
                 .eq(SysRelationPerson::getSuggestId, userId)
@@ -1888,6 +1889,109 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
         return partnerCountVo;
     }
 
+
+    @Override
+    public PartnerCountVo getFivePartnerCount(PartnerCountDto partnerCountDto) {
+        PartnerCountVo partnerCountVo = new PartnerCountVo();
+        String userId = BaseController.getUserId();
+        //原始参数
+        String startTime1 = partnerCountDto.getBeginTime();
+        String endTime1 = partnerCountDto.getEndTime();
+        List<String> deptIds = new ArrayList<>();
+        //工作室
+        List<SysRelationPerson> sysRelationPersonList = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
+                .eq(SysRelationPerson::getSuggestId, userId)
+                .eq(SysRelationPerson::getDelFlag, 1)
+                .eq(SysRelationPerson::getType, 1));
+        partnerCountVo.setWorkSum(sysRelationPersonList.size());
+        if (CollectionUtil.isNotEmpty(sysRelationPersonList)) {
+            List<String> workIds = sysRelationPersonList.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
+            //查工作室下的团队
+            List<SysAgencyLeader> leaderList = sysAgencyLeaderMapper.selectList(new LambdaQueryWrapper<SysAgencyLeader>()
+                    .eq(SysAgencyLeader::getDelFlag, 1).in(SysAgencyLeader::getUserId, workIds));
+            int deptSum = 0;
+            int deptManSum = 0;
+
+            for (SysAgencyLeader sysAgencyLeader : leaderList) {
+                //根据机构id查下面团队
+                List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>()
+                        .likeRight(SysDept::getId, sysAgencyLeader.getDeptId())
+                        .isNull(SysDept::getComlevel).eq(SysDept::getDelFlag, 0)
+                        .eq(SysDept::getManagementSource, sysAgencyLeader.getSource()));
+                deptSum = deptSum + sysDeptList.size();
+                if (sysDeptList.size() > 0) {
+                    for (SysDept sysDept : sysDeptList) {
+                        deptIds.add(sysDept.getId());
+                        //团队下的人数
+                        List<SysUser> sysUserList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
+                                .likeRight(SysUser::getId, sysDept.getId())
+                                .in(SysUser::getStatus, Arrays.asList(1, 4, 5, 6, 7)));
+                        deptManSum = deptManSum + sysUserList.size();
+                    }
+                }
+            }
+
+            partnerCountVo.setDeptSum(deptSum);
+            partnerCountVo.setDeptManSum(deptManSum);
+
+            //曲线图
+            List<CountUserNumVo> countUserNumVoList = null;
+
+            int type = partnerCountDto.getNumber();
+
+            //类型:1:工作室,2:团队 3:代理人
+            if (type == 1) {
+                if (StringUtils.isNotEmpty(startTime1)) {
+                    String s = startTime1.split(" ")[0];
+                    String s1 = endTime1.split(" ")[0];
+                    if (s.equals(s1)) {
+                        //查一天的数据
+                        countUserNumVoList = sysAgencyLeaderMapper.queryWorkByFive(workIds,partnerCountDto);
+                    } else {
+                        //查日期范围数据
+                        countUserNumVoList = sysAgencyLeaderMapper.queryWorkByFiveTime(workIds,partnerCountDto);
+                    }
+                } else {
+                    countUserNumVoList = sysAgencyLeaderMapper.queryWorkByFiveTime(workIds,partnerCountDto);
+                }
+
+
+            }else if (type == 2) {
+                if (StringUtils.isNotEmpty(startTime1)) {
+                    String s = startTime1.split(" ")[0];
+                    String s1 = endTime1.split(" ")[0];
+                    if (s.equals(s1)) {
+                        //查一天的数据
+                        countUserNumVoList = sysPartnerMapper.queryDeptByFiveTime(deptIds, partnerCountDto);
+                    } else {
+                        countUserNumVoList = sysPartnerMapper.queryDeptByFive(deptIds, partnerCountDto);
+                    }
+                } else {
+                    countUserNumVoList = sysPartnerMapper.queryDeptByFive(deptIds, partnerCountDto);
+                }
+
+            } else if (type == 3){
+                if (StringUtils.isNotEmpty(startTime1)) {
+                    String s = startTime1.split(" ")[0];
+                    String s1 = endTime1.split(" ")[0];
+                    if (s.equals(s1)) {
+                        countUserNumVoList = sysPartnerMapper.queryUserByFive(deptIds, partnerCountDto);
+                    } else {
+                        countUserNumVoList = sysPartnerMapper.queryUserByFiveTime(deptIds, partnerCountDto);
+                    }
+                } else {
+                    countUserNumVoList = sysPartnerMapper.queryUserByFiveTime(deptIds, partnerCountDto);
+                }
+
+            }
+
+            partnerCountVo.setCountUserNumVoList(countUserNumVoList);
+        }
+
+
+        return partnerCountVo;
+    }
+
     @Override
     public PartnerProportionVo getPartnerProportion(PartnerCountDto partnerCountDto) {
         PartnerProportionVo partnerProportionVo = new PartnerProportionVo();
@@ -1981,6 +2085,11 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
                     .eq(SysRelationPerson::getDelFlag, 1)
                     .eq(SysRelationPerson::getType, 0));
             levelPartnerVo.setDeptManNum(sysRelationPersonList.size());
+            if (CollectionUtil.isNotEmpty(sysRelationPersonList)) {
+                List<String> strings = sysRelationPersonList.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
+                levelPartnerVo.setPartnerIds(strings);
+            }
+
 //            if (CollectionUtil.isNotEmpty(sysRelationPersonList)) {
 //                List<String> collects = sysRelationPersonList.stream().map(SysRelationPerson::getAgencyLeaderId).collect(Collectors.toList());
 //                //查工作室下的团队
@@ -2196,7 +2305,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
     }
 
     @Override
-    public PartnerInfoFreeVo getLevelPartnerInfo(String userId) {
+    public PartnerInfoFreeVo getLevelPartnerInfo(List<String> partnerIds) {
         PartnerInfoFreeVo partnerInfoFreeVo = new PartnerInfoFreeVo();
         List<PartnerInfoVo> partnerInfoVoList = new ArrayList<>();
 

+ 5 - 3
src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java

@@ -955,8 +955,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
                     sysUserVo.getSysUserInfo().setLiveAddress(Arrays.stream(userInfo.getLiveAddressString()).map(item -> item.toString()).collect(Collectors.joining(",")));
                 }
                 userInfo.setId(sysUser.getId());
+            }else {
+                userInfo=new SysUserInfo();
+                userInfo.setId(sysUser.getId());
             }
-//        userInfo.setId(sysUser.getId());
             sysUserInfoService.save(userInfo);
         }
         List<EsmUserImageVo> esmUserImageVo = sysUserVo.getEsmUserImageVo();
@@ -965,7 +967,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             List<EsmUserImage> esmUserImages = esmUserImageVo.stream().map(x -> new EsmUserImage(x, finalUserId)).collect(Collectors.toList());
             esmUserImageService.saveBatch(esmUserImages);
         }
-        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUserVo.getReferrerId()).orElse("admin") );
+        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUserVo.getSysUser().getReferrerId()).orElse("admin") );
         return HttpResult.ok("新增成功", sysUserMapper.selectById(userId));
     }
 
@@ -1128,7 +1130,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             List<EsmUserImage> esmUserImages = esmUserImageVo.stream().map(x -> new EsmUserImage(x, finalUserId)).collect(Collectors.toList());
             esmUserImageService.saveBatch(esmUserImages);
         }
-        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUserVo.getReferrerId()).orElse("admin"));
+        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUserVo.getSysUser().getReferrerId()).orElse("admin"));
         return HttpResult.ok("新增成功", sysUserMapper.selectById(userId));
     }
 

+ 4 - 0
src/main/java/com/ydtech/modules/fnc/dto/contract/ContractDto.java

@@ -124,4 +124,8 @@ public class ContractDto implements Serializable {
 
     @ApiModelProperty("顺延日")
     private String dayTime;
+
+
+    @ApiModelProperty("顺延时间类型")
+    private String dateType;
 }

+ 4 - 0
src/main/java/com/ydtech/modules/fnc/entity/ContractEntity.java

@@ -141,6 +141,10 @@ public class ContractEntity implements Serializable {
     @TableField("parent_id")
     private String parentId;
 
+    @ApiModelProperty("顺延时间类型")
+    @TableField("date_type")
+    private String dateType;
+
 
 
     @ApiModelProperty("供应商id")

+ 1 - 1
src/main/java/com/ydtech/modules/fnc/service/contract/ContractSupplierService.java

@@ -9,7 +9,7 @@ import com.ydtech.modules.fnc.vo.ContractVo;
 import java.util.List;
 
 public interface ContractSupplierService {
-    void saveAndUpdate(List<String> supplierIdList, String id);
+    void saveAndUpdate(String contractType,List<String> supplierIdList, String id);
 
     /**
      *

+ 12 - 9
src/main/java/com/ydtech/modules/fnc/service/contract/impl/ContractSupplierServiceImpl.java

@@ -35,7 +35,10 @@ public class ContractSupplierServiceImpl extends ServiceImpl<ContractSupplierMap
      */
     @Override
     @Transactional
-    public void saveAndUpdate(List<String> supplierIdList, String id) {
+    public void saveAndUpdate(String contractType,List<String> supplierIdList, String id) {
+        if(!("1".equals(contractType) || "2".equals(contractType))){
+            supplierIdList=new ArrayList<>();
+        }
         baseMapper.deleteBySupplierIds(id);
         List<ContractSupplierEntity> inserList = new ArrayList<>();
         String deptId = BaseController.getDeptId();
@@ -74,14 +77,14 @@ public class ContractSupplierServiceImpl extends ServiceImpl<ContractSupplierMap
         pageVo.setPageNum(contractVO.getPageNum());
         pageVo.setPageSize(contractVO.getPageSize());
 
-        if (contractVO.getSupplierIdList() != null && !contractVO.getSupplierIdList().isEmpty()) { //查关联表获取合同id
-            ContractSupplierDto contractSupplierDto = new ContractSupplierDto();
-            contractSupplierDto.setSupplierIdList(contractVO.getSupplierIdList());
-            List<ContractSupplierEntity> contractSupplierEntityList = contractSupplierService.selecSupplierList(contractSupplierDto);
-            List<String> contractIdList = contractSupplierEntityList.stream().map(ContractSupplierEntity::getContractId).collect(Collectors.toList());
-            contractVO.setContractIdList(contractIdList);
-
-        }
+//        if (contractVO.getSupplierIdList() != null && !contractVO.getSupplierIdList().isEmpty()) { //查关联表获取合同id
+//            ContractSupplierDto contractSupplierDto = new ContractSupplierDto();
+//            contractSupplierDto.setSupplierIdList(contractVO.getSupplierIdList());
+//            List<ContractSupplierEntity> contractSupplierEntityList = contractSupplierService.selecSupplierList(contractSupplierDto);
+//            List<String> contractIdList = contractSupplierEntityList.stream().map(ContractSupplierEntity::getContractId).collect(Collectors.toList());
+//            contractVO.setContractIdList(contractIdList);
+//
+//        }
         IPage<ContractDto> queriedPage = baseMapper.queryPage(page, contractVO);
         return queriedPage;
     }

+ 14 - 11
src/main/java/com/ydtech/modules/fnc/service/contract/impl/contractServiceImpl.java

@@ -91,14 +91,14 @@ public class contractServiceImpl extends ServiceImpl<ContractMapper, ContractEnt
             contractEntity.setInternalCompanyName(interName);
 
             contractEntity.setContractStatus("0");
-            if(contractDto.getExpiringDate() !=null){
-                LocalDateTime shouldPostponedDate =this.saveShouldPostponedDate(contractDto);
-                contractEntity.setShouldPostponedDate(shouldPostponedDate);
-            }
+//            if(contractDto.getExpiringDate() !=null){
+//                LocalDateTime shouldPostponedDate =this.saveShouldPostponedDate(contractDto);
+//                contractEntity.setShouldPostponedDate(shouldPostponedDate);
+//            }
 
             baseMapper.insert(contractEntity);
             if (contractDto.getSupplierIdList() != null) {
-                contractSupplierService.saveAndUpdate(supplierIdList, contractEntity.getId());
+                contractSupplierService.saveAndUpdate(contractDto.getContractType(),supplierIdList, contractEntity.getId());
             }
             if (contractDto.getFilePathIdList() != null) {
                 contractFileService.saveAndUpdate(contractDto.getFilePathIdList(), contractEntity.getId());
@@ -119,13 +119,13 @@ public class contractServiceImpl extends ServiceImpl<ContractMapper, ContractEnt
                 contractEntity.setInternalCompanyName(interName);
             }
 
-            if(contractDto.getExpiringDate() !=null){
-                LocalDateTime shouldPostponedDate =this.saveShouldPostponedDate(contractDto);
-                contractEntity.setShouldPostponedDate(shouldPostponedDate);
-            }
+//            if(contractDto.getExpiringDate() !=null){
+//                LocalDateTime shouldPostponedDate =this.saveShouldPostponedDate(contractDto);
+//                contractEntity.setShouldPostponedDate(shouldPostponedDate);
+//            }
 
             baseMapper.updateById(contractEntity);
-            contractSupplierService.saveAndUpdate(contractDto.getSupplierIdList(), contractEntity.getId());
+            contractSupplierService.saveAndUpdate(contractDto.getContractType(),contractDto.getSupplierIdList(), contractEntity.getId());
 
             contractFileService.saveAndUpdate(contractDto.getFilePathIdList(), contractEntity.getId());
         }
@@ -217,6 +217,9 @@ public class contractServiceImpl extends ServiceImpl<ContractMapper, ContractEnt
             String firtLetter = "";
             String contractCode = contractDto.getContractCode();
             String simpleName = this.getSimpleName(contractDto.getExternalCompaniesId());
+            if (StringUtils.isEmpty(simpleName)) {
+                throw new SystemException("甲方简称为空不能新增 生成不了合同编号");
+            }
             if (simpleName.isEmpty()) {
                 return contractCode;
             }
@@ -332,7 +335,7 @@ public class contractServiceImpl extends ServiceImpl<ContractMapper, ContractEnt
         contractEntity.setInternalCompanyName(interName);
         baseMapper.insert(contractEntity);
         if (contractDto.getSupplierIdList() != null) {
-            contractSupplierService.saveAndUpdate(supplierIdList, contractEntity.getId());
+            contractSupplierService.saveAndUpdate(contractDto.getContractType(),supplierIdList, contractEntity.getId());
         }
         if (contractDto.getFilePathIdList() != null) {
             contractFileService.saveAndUpdate(contractDto.getFilePathIdList(), contractEntity.getId());

+ 0 - 5
src/main/java/com/ydtech/modules/order/components/InsCrawlerOrderComponents.java

@@ -56,10 +56,5 @@ public class InsCrawlerOrderComponents {
         return this.post(url, insuranceEnum.getPinyin(), message, requestBody, responseType, httpHeaders);
     }
 
-    public <T, B> B request(String url, String message, T requestBody, Class<B> responseType) {
-        return this.post(url, "", message, requestBody, responseType, new HttpHeaders());
-    }
-
-
 }
 

+ 0 - 20
src/main/java/com/ydtech/modules/order/controller/ChengTaiOrderApiController.java

@@ -1,32 +1,17 @@
 package com.ydtech.modules.order.controller;
 
-import com.alibaba.fastjson.JSON;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.PropertyNamingStrategy;
-import com.fasterxml.jackson.databind.SerializationFeature;
 import com.ydtech.aop.request.RequestSingleParam;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.ins.model.vo.QuoteRespVo;
-import com.ydtech.modules.ins.model.ya.CarModelDTO;
 import com.ydtech.modules.order.aop.AuditVerification;
 import com.ydtech.modules.order.aop.QuoteVerification;
 import com.ydtech.modules.order.components.InsOrdersComponents;
-import com.ydtech.modules.order.entity.api.chengtai.request.SubmitVerifyRequest;
 import com.ydtech.modules.order.entity.api.chengtai.response.CarInfoResponse;
-import com.ydtech.modules.order.entity.api.yangguang.request.YangGuangQueryVehicleModelRequest;
 import com.ydtech.modules.order.entity.vo.*;
-import com.ydtech.modules.order.entity.vo.ct.CtQuoteAccidentVo;
-import com.ydtech.modules.order.entity.vo.zj.ZjQuoteAccidentVo;
 import com.ydtech.modules.order.service.ChengTaiOrderApiService;
-import com.ydtech.modules.order.service.InsOrdersService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.MediaType;
-import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -34,13 +19,8 @@ import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.client.RestTemplate;
 
 import javax.annotation.Resource;
-import java.io.InputStream;
-import java.io.OutputStreamWriter;
-import java.net.HttpURLConnection;
-import java.net.URL;
 import java.util.Comparator;
 import java.util.List;
-import java.util.Scanner;
 import java.util.stream.Collectors;
 
 @Api(tags = "诚泰财险 API")

+ 9 - 7
src/main/java/com/ydtech/modules/order/controller/QuoteController.java

@@ -11,12 +11,12 @@ import com.ydtech.modules.ins.model.vo.QuoteRespVo;
 import com.ydtech.modules.order.aop.QuoteVerification;
 import com.ydtech.modules.order.components.InsOrdersComponents;
 import com.ydtech.modules.order.entity.InsAreaCompany;
+import com.ydtech.modules.order.entity.InsDrivingIntentionInsurance;
 import com.ydtech.modules.order.entity.vo.AccidentalDrivingVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
 import com.ydtech.modules.order.entity.vo.QuoteAccidentalDrivingVo;
 import com.ydtech.modules.order.entity.vo.bohai.BoHaiQuoteAccidentVo;
-import com.ydtech.modules.order.entity.vo.ct.CtQuoteAccidentVo;
 import com.ydtech.modules.order.entity.vo.guoren.GuoRenQuoteVo;
 import com.ydtech.modules.order.entity.vo.guoren.GuorenAccidentalDrivingVo;
 import com.ydtech.modules.order.entity.vo.yangguang.YgQuoteAccidentVo;
@@ -39,7 +39,6 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
@@ -226,11 +225,14 @@ public class QuoteController extends BaseController {
             respVo = boHaiOrderApiService.quote(quoteInfo, quoteVo1);
         }
         if("CHAC1000000".equals(ptlAgreementAttribution.getInsCompanyId()) && Objects.isNull(respVo)){
-            BaseQuoteVo<List<CtQuoteAccidentVo>> quoteVo1 = new BaseQuoteVo<>();
-//            JSONArray jsonObject = JSONArray.parseArray(JSONArray.toJSONString(quoteVo.getAccidentalDrivingVo()));
-//            List<CtQuoteAccidentVo> javaObject = jsonObject.toJavaList(CtQuoteAccidentVo.class);
-            BeanUtils.copyProperties(quoteVo, quoteVo1);
-//            quoteVo1.setAccidentalDrivingVo(javaObject);
+            BaseQuoteVo<InsDrivingIntentionInsurance> quoteVo1 = new BaseQuoteVo<>();
+            InsDrivingIntentionInsurance javaObject = new InsDrivingIntentionInsurance();
+            if(!Objects.isNull(quoteVo.getAccidentalDrivingVo())) {
+                JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(quoteVo.getAccidentalDrivingVo()));
+                javaObject = jsonObject.toJavaObject(InsDrivingIntentionInsurance.class);
+            }
+            BeanUtils.copyProperties(quoteVo,quoteVo1);
+            quoteVo1.setAccidentalDrivingVo(javaObject);
             respVo = chengTaiOrderApiService.quoteApi(quoteInfo, quoteVo1);
         }
         if ("YGBX1000000".equals(ptlAgreementAttribution.getInsCompanyId()) && Objects.isNull(respVo)) {

+ 66 - 11
src/main/java/com/ydtech/modules/order/entity/api/chengtai/request/InsurePremiumRequest.java

@@ -1,5 +1,6 @@
 package com.ydtech.modules.order.entity.api.chengtai.request;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.ArrayUtil;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.ydtech.constants.enums.InsuranceRisk;
@@ -9,6 +10,8 @@ import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
 import com.ydtech.modules.ins.model.vo.KindInfoVo;
 import com.ydtech.modules.ins.model.vo.RiskInfoVo;
 import com.ydtech.modules.order.constants.InsuranceTypeCorrespondence;
+import com.ydtech.modules.order.entity.InsDrivingIntentionInsurance;
+import com.ydtech.modules.order.entity.InsDrivingIntentionInsuranceSon;
 import com.ydtech.modules.order.entity.api.chengtai.constants.*;
 import com.ydtech.modules.order.entity.api.chengtai.response.CarInfoResponse;
 import com.ydtech.modules.order.entity.api.chengtai.response.QueryCarActualValueResponse;
@@ -16,7 +19,6 @@ import com.ydtech.modules.order.entity.config.ChengTaiConfigureParameters;
 import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
 import com.ydtech.modules.order.entity.vo.VehicleAndVesselTax;
-import com.ydtech.modules.order.entity.vo.ct.CtQuoteAccidentVo;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
 import com.ydtech.utils.IDCardUtils;
 import com.ydtech.utils.StringUtils;
@@ -53,7 +55,7 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
                                 QueryCarActualValueResponse carActualValueResponse,
                                 PersonAreaVo personAreaVo,
                                 ChengTaiConfigureParameters parameters,
-                                BaseQuoteVo<List<CtQuoteAccidentVo>> quoteVo){
+                                BaseQuoteVo<InsDrivingIntentionInsurance> quoteVo){
         super(parameters.getPartnerCode());
         // 标的信息
         InsuredObjectDTO insuredObject = new InsuredObjectDTO(quoteInfoVo, carModelListDTO,carActualValueResponse);
@@ -73,11 +75,12 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
             BiContractDTO biContract = new BiContractDTO(quoteInfoVo,carActualValueResponse.getActualValue());
             this.biContract = biContract;
         }
-//        // 意外险
-//        List<CtQuoteAccidentVo> ctQuoteAccidentVos = quoteVo.getAccidentalDrivingVo();
-//        if(CollUtil.isNotEmpty(ctQuoteAccidentVos)){
-//            AccContractDTO accContract = new AccContractDTO(ctQuoteAccidentVos);
-//        }
+        // 意外险
+        InsDrivingIntentionInsurance ctQuoteAccidentVo = quoteVo.getAccidentalDrivingVo();
+        if(Objects.nonNull(ctQuoteAccidentVo)){
+            AccContractDTO accContract = new AccContractDTO(quoteVo);
+            this.accContract = accContract;
+        }
         this.handlerCode = parameters.getUserId();
 
     }
@@ -90,8 +93,12 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
         @JsonProperty("coverage")
         private List<CoverageDTO> coverage;
 
-        public AccContractDTO(List<CtQuoteAccidentVo> ctQuoteAccidentVos){
-            ContractMainDTO contractMain = new ContractMainDTO();
+        public AccContractDTO(BaseQuoteVo<InsDrivingIntentionInsurance> quoteVo){
+            ContractMainDTO contractMain = new ContractMainDTO(quoteVo);
+            this.contractMain = contractMain;
+            // 投保险别列表
+            InsDrivingIntentionInsurance ctQuoteAccidentVo = quoteVo.getAccidentalDrivingVo();
+            this.coverage = AccContractDTO.CoverageDTO.toCoverageList(ctQuoteAccidentVo);
         }
         @NoArgsConstructor
         @Data
@@ -108,6 +115,29 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
             private String renewalFlag;
             @JsonProperty("insPlan")
             private String insPlan;
+
+            public ContractMainDTO(BaseQuoteVo<InsDrivingIntentionInsurance> quoteVo){
+                InsDrivingIntentionInsurance ctQuoteAccidentVo = quoteVo.getAccidentalDrivingVo();
+                this.riskCode = ctQuoteAccidentVo.getRiskCode();
+                this.renewalFlag = "0";
+                this.insPlan = ctQuoteAccidentVo.getProjectCode();
+                List<RiskInfoVo> riskList = quoteVo.getRisks();
+                if (CollUtil.isNotEmpty(riskList)){
+                    for (RiskInfoVo riskInfoVo : riskList) {
+                        if(InsuranceRisk.BUSINESS.getCode().equals(riskInfoVo.getRiskCode())){
+                            this.validAtOnce = StringUtils.isBlank(riskInfoVo.getInstantFlag())
+                                    || "0".equals(riskInfoVo.getInstantFlag()) ? "0" : "1"; // 及时起保
+                            this.validDate =riskInfoVo.getStartDate();
+                            this.expiryDate = riskInfoVo.getEndDate();
+                        }else if(InsuranceRisk.TRAFFIC.getCode().equals(riskInfoVo.getRiskCode())){
+                            this.validAtOnce = StringUtils.isBlank(riskInfoVo.getInstantFlag())
+                                    || "0".equals(riskInfoVo.getInstantFlag()) ? "0" : "1"; // 及时起保
+                            this.validDate =riskInfoVo.getStartDate();
+                            this.expiryDate = riskInfoVo.getEndDate();
+                        }
+                    }
+                }
+            }
         }
 
         @NoArgsConstructor
@@ -125,6 +155,24 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
             private String shortRateType;
             @JsonProperty("shortRate")
             private String shortRate;
+
+            public static List<CoverageDTO> toCoverageList(InsDrivingIntentionInsurance ctQuoteAccidentVo) {
+                List<InsDrivingIntentionInsuranceSon> sons = ctQuoteAccidentVo.getInsDrivingIntentionInsuranceSon();
+                List<CoverageDTO> coverageDTOS = new ArrayList<>();
+                if (CollUtil.isNotEmpty(sons)){
+                    for (InsDrivingIntentionInsuranceSon son : sons) {
+                        CoverageDTO coverageDTO = new CoverageDTO();
+                        coverageDTO.setKindCode(son.getCode());
+                        coverageDTO.setIfMainKind("2");
+                        coverageDTO.setQuantity(0);
+                        coverageDTO.setCalculateFlag("1");
+                        coverageDTO.setShortRateType("2");
+                        coverageDTO.setShortRate("100");
+                        coverageDTOS.add(coverageDTO);
+                    }
+                }
+                return coverageDTOS;
+            }
         }
     }
 
@@ -181,7 +229,6 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
                         this.validAtOnce = StringUtils.isBlank(riskInfoVo.getInstantFlag())
                                 || "0".equals(riskInfoVo.getInstantFlag()) ? "0" : "1"; // 及时起保
                         this.validDate =riskInfoVo.getStartDate();
-                        System.out.println(validDate);
                         this.renewalFlag = "0";
                     }
                 }
@@ -349,6 +396,12 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
             private String useNatureCode;
             @JsonProperty("carTypeCode")
             private String carTypeCode;
+            @JsonProperty("certificateType")
+            private String certificateType;
+            @JsonProperty("certificateNo")
+            private String certificateNo;
+            @JsonProperty("certificateDate")
+            private String certificateDate;
 
             public PolicyCarDTO(BaseQuoteInfoVo quoteInfoVo,
                                 CarInfoResponse.CarModelListDTO carModelListDTO,
@@ -409,8 +462,10 @@ public class InsurePremiumRequest extends ChengTaiBaseRequest{
                 this.energyTypes = carInfo.getEnergyType();
                 this.monthDepRate = carActualValueResponse.getMonthDepRate();
                 this.actualValue = carActualValueResponse.getActualValue();
-                this.consultValue = carActualValueResponse.getActualValue(); // TODO 下星期问保险公司
+                this.consultValue = carActualValueResponse.getActualValue();
                 this.unladenMass = new BigDecimal(carInfo.getCompleteKerbMass());
+
+                // TODO 后期加入新车备案信息
             }
         }
 

+ 2 - 0
src/main/java/com/ydtech/modules/order/entity/api/chengtai/response/InsurePremiumResponse.java

@@ -19,6 +19,8 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
     private InsuredObjectDTO insuredObject;
     @JsonProperty("ciContract")
     private CiContractDTO ciContract;
+    @JsonProperty("carRegistFlag")
+    private String carRegistFlag;
 
     @NoArgsConstructor
     @Data

+ 0 - 16
src/main/java/com/ydtech/modules/order/entity/vo/ct/CtQuoteAccidentVo.java

@@ -1,16 +0,0 @@
-package com.ydtech.modules.order.entity.vo.ct;
-
-import com.ydtech.modules.order.entity.api.zijin.response.QueryVehicProductsResponse;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@EqualsAndHashCode(callSuper = true)
-@NoArgsConstructor
-@Data
-public class CtQuoteAccidentVo extends QueryVehicProductsResponse.ProductDtoListDTO{
-    private static final long serialVersionUID = 0x9fd5cb8e1ce77a89L;
-
-
-
-}

+ 2 - 4
src/main/java/com/ydtech/modules/order/service/ChengTaiOrderApiService.java

@@ -3,15 +3,13 @@ package com.ydtech.modules.order.service;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.ins.model.vo.QuoteRespVo;
 import com.ydtech.modules.order.entity.InsAreaCompany;
+import com.ydtech.modules.order.entity.InsDrivingIntentionInsurance;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.api.chengtai.response.CarInfoResponse;
 import com.ydtech.modules.order.entity.dto.ReadPdfUrlListDto;
 import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
 import com.ydtech.modules.order.entity.vo.PolicyPrintVo;
-import com.ydtech.modules.order.entity.vo.ct.CtQuoteAccidentVo;
-
-import java.util.List;
 
 public interface ChengTaiOrderApiService{
 
@@ -22,7 +20,7 @@ public interface ChengTaiOrderApiService{
      * @param quoteVo
      * @return
      */
-    HttpResult<QuoteRespVo> quoteApi(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<CtQuoteAccidentVo>> quoteVo) throws Exception;
+    HttpResult<QuoteRespVo> quoteApi(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<InsDrivingIntentionInsurance> quoteVo) throws Exception;
 
     /**
      * 提交影像信息

+ 8 - 10
src/main/java/com/ydtech/modules/order/service/impl/ChengTaiOrderApiServiceImpl.java

@@ -11,25 +11,18 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.admin.model.vo.PersonAreaVo;
 import com.ydtech.modules.admin.service.SysAreaService;
-import com.ydtech.modules.ins.model.guoren.PremiumResp;
 import com.ydtech.modules.ins.model.vo.*;
 import com.ydtech.modules.order.components.ConfigureParametersComponents;
 import com.ydtech.modules.order.components.InsImagesUploadCacheComponents;
 import com.ydtech.modules.order.components.chengtai.ChengTaiRequestApiComponents;
 import com.ydtech.modules.order.constants.UnderwritingStatus;
-import com.ydtech.modules.order.entity.InsAreaCompany;
-import com.ydtech.modules.order.entity.InsAreaCompanyExternalPolicy;
-import com.ydtech.modules.order.entity.InsOrders;
-import com.ydtech.modules.order.entity.TaxArrears;
+import com.ydtech.modules.order.entity.*;
 import com.ydtech.modules.order.entity.api.chengtai.constants.CtKindCodeEnum;
 import com.ydtech.modules.order.entity.api.chengtai.constants.OrderStatusEnum;
 import com.ydtech.modules.order.entity.api.chengtai.constants.ResponseCode;
 import com.ydtech.modules.order.entity.api.chengtai.constants.RiskCodeEnum;
 import com.ydtech.modules.order.entity.api.chengtai.request.*;
 import com.ydtech.modules.order.entity.api.chengtai.response.*;
-import com.ydtech.modules.order.entity.api.guoren.constants.GuoRenRiskCode;
-import com.ydtech.modules.order.entity.api.zijin.constants.enums.BusType;
-import com.ydtech.modules.order.entity.api.zijin.request.UploadImageInfoListRequest;
 import com.ydtech.modules.order.entity.config.ChengTaiConfigureParameters;
 import com.ydtech.modules.order.entity.dto.ReadPdfUrlListDto;
 import com.ydtech.modules.order.entity.filter.CarModelsFilterUtils;
@@ -37,7 +30,6 @@ import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
 import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
 import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
 import com.ydtech.modules.order.entity.vo.PolicyPrintVo;
-import com.ydtech.modules.order.entity.vo.ct.CtQuoteAccidentVo;
 import com.ydtech.modules.order.service.*;
 import com.ydtech.modules.protocol.entity.po.PtlAgreementAttribution;
 import com.ydtech.modules.protocol.service.PtlAgreementAttributionService;
@@ -95,7 +87,7 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
     private String apiUrl;
 
     @Override
-    public HttpResult<QuoteRespVo> quoteApi(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<CtQuoteAccidentVo>> quoteVo) throws Exception {
+    public HttpResult<QuoteRespVo> quoteApi(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<InsDrivingIntentionInsurance> quoteVo) throws Exception {
         /** 1. 协议id获取配置实体 */
         String agreementId = quoteVo.getAgreementId();
         // 1.1 账号信息
@@ -135,6 +127,12 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
             throw new SystemException(insurePremiumResponse.getMessage());
         }
 
+        // 新车需要备案
+        if(StringUtils.isNotBlank(insurePremiumResponse.getCarRegistFlag())){
+            if(insurePremiumResponse.getCarRegistFlag().equals("1")){
+                throw new SystemException("该车辆需要进行新车备案,请填写新车备案信息重新进行保费试算!");
+            }
+        }
         // 警告信息
         CarInfoVo carInfo = quoteInfoVo.getCarInfo();
         boolean isEnergy = carInfo.isNewEnergy();

+ 51 - 0
src/main/resources/mapper/modules/admin/SysAgencyLeaderMapper.xml

@@ -183,6 +183,57 @@
         </where>
         ORDER BY sal.id desc
     </select>
+    <select id="queryWorkByFive" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.id) as countNum
+        from(
+        SELECT
+        s.id,DATE_FORMAT(s.create_time, '%Y-%m-%d %H' ) as time
+        FROM sys_agency_leader  s
+        <where>
+            s.del_flag = 1
+            <if test="workIds != null and workIds != '' and workIds.size() > 0">
+                AND s.user_id  in
+                <foreach collection="workIds" item="id" open="(" separator="," close=")">
+                    #{id}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d' ) like CONCAT( DATE_FORMAT( #{dto.beginTime}, '%Y-%m-%d' ), '%' ))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+
+    </select>
+    <select id="queryWorkByFiveTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.id) as countNum
+        from(
+        SELECT
+        s.id,DATE_FORMAT(s.create_time, '%Y-%m-%d' ) as time
+        FROM sys_agency_leader  s
+        <where>
+            s.del_flag = 1
+            <if test="workIds != null and workIds != '' and workIds.size() > 0">
+                AND s.user_id  in
+                <foreach collection="workIds" item="id" open="(" separator="," close=")">
+                    #{id}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d %H:%i:%s') between DATE_FORMAT( #{dto.beginTime}, '%Y-%m-%d %H:%i:%s') and DATE_FORMAT( #{dto.endTime}, '%Y-%m-%d %H:%i:%s'))
+
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+
+    </select>
 
 </mapper>
 

+ 103 - 2
src/main/resources/mapper/modules/admin/SysPartnerMapper.xml

@@ -93,6 +93,30 @@
 
     </select>
 
+    <select id="queryDeptByTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.id) as countNum
+        from(
+        SELECT
+        s.id,DATE_FORMAT(s.create_time, '%Y-%m-%d' ) as time
+        FROM sys_dept  s
+        <where>
+            s.del_flag = 0
+            <if test="deptIds != null and deptIds != '' and deptIds.size() > 0">
+                AND s.id  in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d %H:%i:%s') between DATE_FORMAT( #{dto.beginTime}, '%Y-%m-%d %H:%i:%s') and DATE_FORMAT( #{dto.endTime}, '%Y-%m-%d %H:%i:%s'))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+    </select>
 
     <select id="queryDeptByTimes" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.id) as countNum
@@ -119,7 +143,7 @@
         spa.time ASC
     </select>
 
-    <select id="queryDeptByTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+    <select id="queryDeptByFive" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.id) as countNum
         from(
         SELECT
@@ -144,6 +168,31 @@
         spa.time ASC
     </select>
 
+    <select id="queryDeptByFiveTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.id) as countNum
+        from(
+        SELECT
+        s.id,DATE_FORMAT(s.create_time, '%Y-%m-%d %H' ) as time
+        FROM sys_dept  s
+        <where>
+            s.del_flag = 0
+            <if test="deptIds != null and deptIds != '' and deptIds.size() > 0">
+                AND s.id  in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d' ) like CONCAT( DATE_FORMAT( #{dto.beginTime}, '%Y-%m-%d' ), '%' ))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+    </select>
+
     <select id="queryUserByTimes" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.id) as countNum
         from(
@@ -169,7 +218,6 @@
         spa.time ASC
 
     </select>
-
     <select id="queryUserByTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.id) as countNum
         from(
@@ -195,6 +243,59 @@
         spa.time ASC
 
     </select>
+
+    <select id="queryUserByFive" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.id) as countNum
+        from(
+        SELECT
+        s.id,DATE_FORMAT(s.create_time, '%Y-%m-%d %H' ) as time
+        FROM sys_user  s
+        <where>
+            s.status in (1, 4, 5, 6, 7)
+            <if test="deptIds != null and deptIds != '' and deptIds.size() > 0">
+                AND s.dept_id  in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d' ) like CONCAT( DATE_FORMAT( #{dto.beginTime}, '%Y-%m-%d' ), '%' ))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+
+    </select>
+    <select id="queryUserByFiveTime" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
+        select spa.time, COUNT(spa.id) as countNum
+        from(
+        SELECT
+        s.id,DATE_FORMAT(s.create_time, '%Y-%m-%d' ) as time
+        FROM sys_user  s
+        <where>
+            s.status in (1, 4, 5, 6, 7)
+            <if test="deptIds != null and deptIds != '' and deptIds.size() > 0">
+                AND s.dept_id  in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="dto.beginTime != null and dto.beginTime != '' and dto.endTime != null and dto.endTime != ''">
+                and (DATE_FORMAT(s.create_time, '%Y-%m-%d %H:%i:%s') between DATE_FORMAT( #{dto.beginTime}, '%Y-%m-%d %H:%i:%s') and DATE_FORMAT( #{dto.endTime}, '%Y-%m-%d %H:%i:%s'))
+            </if>
+        </where>
+        ) as spa
+        GROUP BY
+        spa.time
+        ORDER BY
+        spa.time ASC
+
+    </select>
+
+
     <select id="queryPartnerByTimes" resultType="com.ydtech.modules.admin.model.vo.CountUserNumVo">
         select spa.time, COUNT(spa.id) as countNum
         from(

+ 8 - 2
src/main/resources/mapper/modules/fnc/contract/ContractSupplierMapper.xml

@@ -79,9 +79,8 @@
         left join  ins_contract  ic on ic.id =ics.contract_id
         <where>
             <if test="vo.contractCode !=null  and  vo.contractCode !=''">
-                and ic.contract_code like concat('%',#{vo.contractCode},'%')
+                and (ic.contract_code like concat('%',#{vo.contractCode},'%') or ic.contract_name like concat('%',#{vo.contractCode},'%'))
             </if>
-
             <if test="vo.contractIdList != null  and vo.contractIdList !='' and  vo.contractIdList.size()>0 ">
                 and ic.id IN
                 <foreach collection="vo.contractIdList" item="id" index="index" open="(" close=")" separator=",">
@@ -89,6 +88,13 @@
                 </foreach>
             </if>
 
+            <if test="vo.supplierIdList != null  and vo.supplierIdList !='' and  vo.supplierIdList.size()>0 ">
+                and ics.supplier_id IN
+                <foreach collection="vo.supplierIdList" item="id" index="index" open="(" close=")" separator=",">
+                    #{id}
+                </foreach>
+            </if>
+
             <if test="vo.contractName !=null  and  vo.contractName !=''">
                 and ic.contract_name =#{vo.contractName}
             </if>