Kaynağa Gözat

feat:增加开发管理下大货订单相关接口(未完成)

DESKTOP-6104BU4\Administrator 6 ay önce
ebeveyn
işleme
0260da81ba
59 değiştirilmiş dosya ile 1258 ekleme ve 537 silme
  1. 22 0
      ruoyi-admin/src/main/resources/application-dev.yml
  2. 287 0
      ruoyi-admin/src/main/resources/application-test.yml
  3. 0 22
      ruoyi-admin/src/main/resources/application.yml
  4. 11 0
      ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/DevelopmentBulkOrderConstants.java
  5. 0 21
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/context/DevelopmentOrderContext.java
  6. 0 13
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/controller/FaKuyouUserOrderController.java
  7. 0 40
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/FaKuyouUserOrder.java
  8. 0 38
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/bo/FaKuyouUserOrderBo.java
  9. 0 39
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/vo/FaKuyouUserOrderVo.java
  10. 0 10
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/mapper/BulkOrderManagementMapper.java
  11. 0 35
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/DevelopmentOrderService.java
  12. 0 14
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/DevelopmentOrderState.java
  13. 0 13
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/impl/BulkOrderManagementServiceImpl.java
  14. 0 37
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/ColorGradingStatusServiceImpl.java
  15. 0 15
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/CompletedStatusServiceImpl.java
  16. 0 32
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/ConfirmTheStatusInProgressServiceImpl.java
  17. 0 22
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/PendingStatusServiceImpl.java
  18. 0 30
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/PrintingStatusServiceImpl.java
  19. 0 32
      ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/StatusInTypesettingServiceImpl.java
  20. 0 7
      ruoyi-modules/ruoyi-bulkOrder/src/main/resources/mapper/BulkOrderManagementMapper.xml
  21. 0 4
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/bulk/service/BulkOrderManagementService.java
  22. 0 10
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/bulk/service/impl/BulkOrderManagementServiceImpl.java
  23. 24 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/context/DevelopmentOrderContext.java
  24. 15 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/controller/BulkOrderController.java
  25. 5 6
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/controller/DevelopmentOrderController.java
  26. 3 3
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/controller/DevelopmentOrderRemarkController.java
  27. 58 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/BulkOrder.java
  28. 24 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/DevelopOrderLogs.java
  29. 5 3
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/DevelopmentOrder.java
  30. 1 1
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/DevelopmentOrderRemark.java
  31. 60 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/BulkOrderBo.java
  32. 26 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/DevelopOrderLogsBo.java
  33. 2 3
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/DevelopmentOrderBo.java
  34. 2 2
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/DevelopmentOrderRemarkBo.java
  35. 58 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/BulkOrderVo.java
  36. 26 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopOrderLogsVo.java
  37. 2 2
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopmentOrderRemarkVo.java
  38. 1 1
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopmentOrderTableDataInfo.java
  39. 3 7
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopmentOrderVo.java
  40. 29 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/BulkOrderMapper.java
  41. 10 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/DevelopOrderLogsMapper.java
  42. 9 4
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/DevelopmentOrderMapper.java
  43. 3 3
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/DevelopmentOrderRemarkMapper.java
  44. 17 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/BulkOrderService.java
  45. 43 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/DevelopmentOrderService.java
  46. 14 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/DevelopmentOrderStateService.java
  47. 25 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/CancelledStatusServiceImpl.java
  48. 37 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/ColorGradingStatusServiceImpl.java
  49. 34 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/CompletedStatusServiceImpl.java
  50. 37 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/ConfirmTheStatusInProgressServiceImpl.java
  51. 30 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/ModifyingStatusServiceImpl.java
  52. 16 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/PendingStatusServiceImpl.java
  53. 39 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/PrintingStatusServiceImpl.java
  54. 16 14
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/StateServiceInDrawingServiceImpl.java
  55. 49 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/StatusInTypesettingServiceImpl.java
  56. 89 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/impl/BulkOrderServiceImpl.java
  57. 83 52
      ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/impl/DevelopmentOrderServiceImpl.java
  58. 36 0
      ruoyi-modules/ruoyi-developmentManagement/src/main/resources/mapper/BulkOrderMapper.xml
  59. 7 2
      ruoyi-modules/ruoyi-developmentManagement/src/main/resources/mapper/DevelopmentOrderMapper.xml

+ 22 - 0
ruoyi-admin/src/main/resources/application-dev.yml

@@ -1,3 +1,25 @@
+# 开发环境配置
+server:
+  # 服务器的HTTP端口,默认为8080
+  port: 8112
+  servlet:
+    # 应用的访问路径
+    context-path: /
+  # undertow 配置
+  undertow:
+    # HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
+    max-http-post-size: -1
+    # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
+    # 每块buffer的空间大小,越小的空间被利用越充分
+    buffer-size: 512
+    # 是否分配的直接内存
+    direct-buffers: true
+    threads:
+      # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
+      io: 8
+      # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
+      worker: 256
+
 --- # 监控中心配置
 spring.boot.admin.client:
   # 增加客户端开关

+ 287 - 0
ruoyi-admin/src/main/resources/application-test.yml

@@ -0,0 +1,287 @@
+# 开发环境配置
+server:
+  # 服务器的HTTP端口,默认为8080
+  port: 8112
+  servlet:
+    # 应用的访问路径
+    context-path: /
+  # undertow 配置
+  undertow:
+    # HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
+    max-http-post-size: -1
+    # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
+    # 每块buffer的空间大小,越小的空间被利用越充分
+    buffer-size: 512
+    # 是否分配的直接内存
+    direct-buffers: true
+    threads:
+      # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
+      io: 8
+      # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
+      worker: 256
+
+--- # 监控中心配置
+spring.boot.admin.client:
+  # 增加客户端开关
+  enabled: false
+  url: http://localhost:9090/admin
+  instance:
+    service-host-type: IP
+    metadata:
+      username: ${spring.boot.admin.client.username}
+      userpassword: ${spring.boot.admin.client.password}
+  username: @monitor.username@
+  password: @monitor.password@
+
+--- # snail-job 配置
+snail-job:
+  enabled: false
+  # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务
+  group: "ruoyi_group"
+  # SnailJob 接入验证令牌 详见 script/sql/ry_job.sql `sj_group_config` 表
+  token: "SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT"
+  server:
+    host: 127.0.0.1
+    port: 17888
+  # 命名空间UUID 详见 script/sql/ry_job.sql `sj_namespace`表`unique_id`字段
+  namespace: ${spring.profiles.active}
+  # 随主应用端口漂移
+  port: 2${server.port}
+  # 客户端ip指定
+  host:
+  # RPC类型: netty, grpc
+  rpc-type: grpc
+
+--- # 数据源配置
+spring:
+  datasource:
+    type: com.zaxxer.hikari.HikariDataSource
+    # 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
+    dynamic:
+      # 性能分析插件(有性能损耗 不建议生产环境使用)
+      p6spy: true
+      # 设置默认的数据源或者数据源组,默认值即为 master
+      primary: master
+      # 严格模式 匹配不到数据源则报错
+      strict: true
+      datasource:
+        # 主库数据源
+        master:
+          type: ${spring.datasource.type}
+          driverClassName: com.mysql.cj.jdbc.Driver
+          # jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
+          # rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
+          url: jdbc:mysql://10.10.244.243:3306/sys_chenx_buyi_b?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
+          username: root
+          password: 123456
+#        # 从库数据源
+#        slave:
+#          lazy: true
+#          type: ${spring.datasource.type}
+#          driverClassName: com.mysql.cj.jdbc.Driver
+#          url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
+#          username:
+#          password:
+#        oracle:
+#          type: ${spring.datasource.type}
+#          driverClassName: oracle.jdbc.OracleDriver
+#          url: jdbc:oracle:thin:@//localhost:1521/XE
+#          username: ROOT
+#          password: root
+#        postgres:
+#          type: ${spring.datasource.type}
+#          driverClassName: org.postgresql.Driver
+#          url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
+#          username: root
+#          password: root
+#        sqlserver:
+#          type: ${spring.datasource.type}
+#          driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
+#          url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
+#          username: SA
+#          password: root
+      hikari:
+        # 最大连接池数量
+        maxPoolSize: 20
+        # 最小空闲线程数量
+        minIdle: 10
+        # 配置获取连接等待超时的时间
+        connectionTimeout: 30000
+        # 校验超时时间
+        validationTimeout: 5000
+        # 空闲连接存活最大时间,默认10分钟
+        idleTimeout: 600000
+        # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
+        maxLifetime: 1800000
+        # 多久检查一次连接的活性
+        keepaliveTime: 30000
+
+--- # redis 单机配置(单机与集群只能开启一个另一个需要注释掉)
+spring.data:
+  redis:
+    # 地址
+    host: localhost
+    # 端口,默认为6379
+    port: 6379
+    # 数据库索引
+    database: 0
+    # redis 密码必须配置
+#    password: ruoyi123
+    # 连接超时时间
+    timeout: 10s
+    # 是否开启ssl
+    ssl.enabled: false
+
+# redisson 配置
+redisson:
+  # redis key前缀
+  keyPrefix:
+  # 线程池数量
+  threads: 4
+  # Netty线程池数量
+  nettyThreads: 8
+  # 单节点配置
+  singleServerConfig:
+    # 客户端名称
+    clientName: ${ruoyi.name}
+    # 最小空闲连接数
+    connectionMinimumIdleSize: 8
+    # 连接池大小
+    connectionPoolSize: 32
+    # 连接空闲超时,单位:毫秒
+    idleConnectionTimeout: 10000
+    # 命令等待超时,单位:毫秒
+    timeout: 3000
+    # 发布和订阅连接池大小
+    subscriptionConnectionPoolSize: 50
+
+--- # mail 邮件发送
+mail:
+  enabled: false
+  host: smtp.163.com
+  port: 465
+  # 是否需要用户名密码验证
+  auth: true
+  # 发送方,遵循RFC-822标准
+  from: xxx@163.com
+  # 用户名(注意:如果使用foxmail邮箱,此处user为qq号)
+  user: xxx@163.com
+  # 密码(注意,某些邮箱需要为SMTP服务单独设置密码,详情查看相关帮助)
+  pass: xxxxxxxxxx
+  # 使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。
+  starttlsEnable: true
+  # 使用SSL安全连接
+  sslEnable: true
+  # SMTP超时时长,单位毫秒,缺省值不超时
+  timeout: 0
+  # Socket连接超时值,单位毫秒,缺省值不超时
+  connectionTimeout: 0
+
+--- # sms 短信 支持 阿里云 腾讯云 云片 等等各式各样的短信服务商
+# https://sms4j.com/doc3/ 差异配置文档地址 支持单厂商多配置,可以配置多个同时使用
+sms:
+  # 配置源类型用于标定配置来源(interface,yaml)
+  config-type: yaml
+  # 用于标定yml中的配置是否开启短信拦截,接口配置不受此限制
+  restricted: true
+  # 短信拦截限制单手机号每分钟最大发送,只对开启了拦截的配置有效
+  minute-max: 1
+  # 短信拦截限制单手机号每日最大发送量,只对开启了拦截的配置有效
+  account-max: 30
+  # 以下配置来自于 org.dromara.sms4j.provider.config.BaseConfig类中
+  blends:
+    # 唯一ID 用于发送短信寻找具体配置 随便定义别用中文即可
+    # 可以同时存在两个相同厂商 例如: ali1 ali2 两个不同的阿里短信账号 也可用于区分租户
+    config1:
+      # 框架定义的厂商名称标识,标定此配置是哪个厂商,详细请看厂商标识介绍部分
+      supplier: alibaba
+      # 有些称为accessKey有些称之为apiKey,也有称为sdkKey或者appId。
+      access-key-id: 您的accessKey
+      # 称为accessSecret有些称之为apiSecret
+      access-key-secret: 您的accessKeySecret
+      signature: 您的短信签名
+      sdk-app-id: 您的sdkAppId
+    config2:
+      # 厂商标识,标定此配置是哪个厂商,详细请看厂商标识介绍部分
+      supplier: tencent
+      access-key-id: 您的accessKey
+      access-key-secret: 您的accessKeySecret
+      signature: 您的短信签名
+      sdk-app-id: 您的sdkAppId
+
+
+--- # 三方授权
+justauth:
+  # 前端外网访问地址
+  address: http://localhost:80
+  type:
+    maxkey:
+      # maxkey 服务器地址
+      # 注意 如下均配置均不需要修改 maxkey 已经内置好了数据
+      server-url: http://sso.maxkey.top
+      client-id: 876892492581044224
+      client-secret: x1Y5MTMwNzIwMjMxNTM4NDc3Mzche8
+      redirect-uri: ${justauth.address}/social-callback?source=maxkey
+    topiam:
+      # topiam 服务器地址
+      server-url: http://127.0.0.1:1898/api/v1/authorize/y0q************spq***********8ol
+      client-id: 449c4*********937************759
+      client-secret: ac7***********1e0************28d
+      redirect-uri: ${justauth.address}/social-callback?source=topiam
+      scopes: [openid, email, phone, profile]
+    qq:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=qq
+      union-id: false
+    weibo:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=weibo
+    gitee:
+      client-id: 91436b7940090d09c72c7daf85b959cfd5f215d67eea73acbf61b6b590751a98
+      client-secret: 02c6fcfd70342980cd8dd2f2c06c1a350645d76c754d7a264c4e125f9ba915ac
+      redirect-uri: ${justauth.address}/social-callback?source=gitee
+    dingtalk:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=dingtalk
+    baidu:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=baidu
+    csdn:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=csdn
+    coding:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=coding
+      coding-group-name: xx
+    oschina:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=oschina
+    alipay_wallet:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=alipay_wallet
+      alipay-public-key: MIIB**************DAQAB
+    wechat_open:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=wechat_open
+    wechat_mp:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=wechat_mp
+    wechat_enterprise:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=wechat_enterprise
+      agent-id: 1000002
+    gitlab:
+      client-id: 10**********6
+      client-secret: 1f7d08**********5b7**********29e
+      redirect-uri: ${justauth.address}/social-callback?source=gitlab

+ 0 - 22
ruoyi-admin/src/main/resources/application.yml

@@ -19,28 +19,6 @@ captcha:
   # 字符验证码长度
   charLength: 4
 
-# 开发环境配置
-server:
-  # 服务器的HTTP端口,默认为8080
-  port: 8112
-  servlet:
-    # 应用的访问路径
-    context-path: /
-  # undertow 配置
-  undertow:
-    # HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
-    max-http-post-size: -1
-    # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
-    # 每块buffer的空间大小,越小的空间被利用越充分
-    buffer-size: 512
-    # 是否分配的直接内存
-    direct-buffers: true
-    threads:
-      # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
-      io: 8
-      # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
-      worker: 256
-
 # 日志配置
 logging:
   level:

+ 11 - 0
ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/DevelopmentBulkOrderConstants.java

@@ -0,0 +1,11 @@
+package org.dromara.common.core.constant;
+
+public interface DevelopmentBulkOrderConstants {
+
+//    待排大货
+    Integer AWAIT_BULK_ORDER = 0;
+//    排大货中
+    Integer ARRANGE_BULK_ORDERS = 1;
+//    大货已完成
+    Integer THE_BULK_ORDER_HAS_BEEN_COMPLETED = 2;
+}

+ 0 - 21
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/context/DevelopmentOrderContext.java

@@ -1,21 +0,0 @@
-package org.dromara.bulk.context;
-
-import lombok.Setter;
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-
-@Setter
-public class DevelopmentOrderContext {
-
-    private DevelopmentOrderState currentState;
-
-    public DevelopmentOrderContext(DevelopmentOrderState initialState) {
-        this.currentState = initialState;
-    }
-
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-        currentState.handle(developmentOrderBo, developmentOrderVo);
-    }
-
-}

+ 0 - 13
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/controller/FaKuyouUserOrderController.java

@@ -1,13 +0,0 @@
-package org.dromara.bulk.controller;
-
-import lombok.RequiredArgsConstructor;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RequestMapping("/kuyou/user_order")
-@RequiredArgsConstructor
-public class FaKuyouUserOrderController {
-
-
-}

+ 0 - 40
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/FaKuyouUserOrder.java

@@ -1,40 +0,0 @@
-package org.dromara.bulk.domain;
-
-
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-import org.dromara.common.tenant.core.TenantEntity;
-
-/**
- *大货订单表
- */
-@Data
-@NoArgsConstructor
-@TableName("fa_kuyou_user_order")
-@EqualsAndHashCode(callSuper = true)
-public class FaKuyouUserOrder extends TenantEntity {
-
-  private long id;
-  private String name;
-  private String phone;
-  private String address;
-  private String orderNum;
-  private double orderPrice;
-  private long status;
-  private String remark;
-  private long payStatus;
-  private long payTime;
-  private String diverType;
-  private long storeId;
-  private long diverId;
-  private String diverName;
-  private String diverPhone;
-  private long hide;
-  private String note;
-  private long confirmDeliveryTime;
-  private long factoryUserId;
-
-
-}

+ 0 - 38
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/bo/FaKuyouUserOrderBo.java

@@ -1,38 +0,0 @@
-package org.dromara.bulk.domain.bo;
-
-
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-import org.dromara.bulk.domain.FaKuyouUserOrder;
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-
-@Data
-@NoArgsConstructor
-@EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = FaKuyouUserOrder.class, reverseConvertGenerate = false)
-public class FaKuyouUserOrderBo extends BaseEntity {
-
-  private long id;
-  private String name;
-  private String phone;
-  private String address;
-  private String orderNum;
-  private double orderPrice;
-  private long status;
-  private String remark;
-  private long payStatus;
-  private long payTime;
-  private String diverType;
-  private long storeId;
-  private long diverId;
-  private String diverName;
-  private String diverPhone;
-  private long hide;
-  private String note;
-  private long confirmDeliveryTime;
-  private long factoryUserId;
-
-
-}

+ 0 - 39
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/vo/FaKuyouUserOrderVo.java

@@ -1,39 +0,0 @@
-package org.dromara.bulk.domain.vo;
-
-
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-import org.dromara.bulk.domain.FaKuyouUserOrder;
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-import org.dromara.common.tenant.core.TenantEntity;
-
-@Data
-@NoArgsConstructor
-@EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = FaKuyouUserOrder.class, reverseConvertGenerate = false)
-public class FaKuyouUserOrderVo extends BaseEntity {
-
-  private long id;
-  private String name;
-  private String phone;
-  private String address;
-  private String orderNum;
-  private double orderPrice;
-  private long status;
-  private String remark;
-  private long payStatus;
-  private long payTime;
-  private String diverType;
-  private long storeId;
-  private long diverId;
-  private String diverName;
-  private String diverPhone;
-  private long hide;
-  private String note;
-  private long confirmDeliveryTime;
-  private long factoryUserId;
-
-}

+ 0 - 10
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/mapper/BulkOrderManagementMapper.java

@@ -1,10 +0,0 @@
-package org.dromara.bulk.mapper;
-
-import org.apache.ibatis.annotations.Mapper;
-import org.dromara.bulk.domain.FaKuyouUserOrder;
-import org.dromara.bulk.domain.vo.FaKuyouUserOrderVo;
-import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
-
-@Mapper
-public interface BulkOrderManagementMapper extends BaseMapperPlus<FaKuyouUserOrder, FaKuyouUserOrderVo> {
-}

+ 0 - 35
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/DevelopmentOrderService.java

@@ -1,35 +0,0 @@
-package org.dromara.bulk.service;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.bo.DevelopmentOrderRemarkBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderTableDataInfo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.common.mybatis.core.page.PageQuery;
-
-import java.util.List;
-
-public interface DevelopmentOrderService {
-
-    DevelopmentOrderTableDataInfo<DevelopmentOrderVo> getList(DevelopmentOrderBo developmentOrderBo, PageQuery pageQuery);
-
-    int insert(DevelopmentOrderBo developmentOrder);
-
-    boolean update(List<DevelopmentOrderBo> developmentOrderBo);
-
-    int delete(Long[] id);
-
-    DevelopmentOrderVo selectById(int id);
-
-    /**
-     * 状态参数校验
-     * @param developmentOrderBo
-     */
-    void checkStatus(DevelopmentOrderBo developmentOrderBo);
-
-    /**
-     * 新增备注
-     * @param developmentOrderBo
-     * @return
-     */
-    int addRemark(DevelopmentOrderRemarkBo developmentOrderBo);
-}

+ 0 - 14
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/DevelopmentOrderState.java

@@ -1,14 +0,0 @@
-package org.dromara.bulk.service;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-
-/**
- * 订单状态模式
- */
-
-public interface DevelopmentOrderState {
-
-    void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo);
-
-}

+ 0 - 13
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/impl/BulkOrderManagementServiceImpl.java

@@ -1,13 +0,0 @@
-package org.dromara.bulk.service.impl;
-
-import lombok.RequiredArgsConstructor;
-import org.dromara.bulk.service.BulkOrderManagementService;
-import org.springframework.stereotype.Service;
-
-@Service
-@RequiredArgsConstructor
-public class BulkOrderManagementServiceImpl implements BulkOrderManagementService {
-
-
-
-}

+ 0 - 37
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/ColorGradingStatusServiceImpl.java

@@ -1,37 +0,0 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.common.core.constant.DevelopmentOrderConstants;
-
-import java.util.Date;
-
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
-
-/**
- * 调色中状态实现类
- */
-public class ColorGradingStatusServiceImpl implements DevelopmentOrderState {
-    @Override
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-        if ((developmentOrderVo.getColorUserid() == null || developmentOrderVo.getColorUserid() == 0) &&
-                developmentOrderVo.getColorFile() == null) {
-            assertNotLongBlank(developmentOrderBo.getColorUserid(), "订单" + developmentOrderBo.getOrderNum() + ":调色人不能为空");
-            assertNotBlank(developmentOrderBo.getColorFile(), "订单" + developmentOrderBo.getOrderNum() + ":调色文件不能为空");
-        } else {
-            //          设置调色结束时间
-            developmentOrderBo.setStatus3EndTime(new Date());
-            //          设置排版开始时间
-            developmentOrderBo.setStatus4StartTime(new Date());
-            //          判断是否排版
-            if (developmentOrderVo.getIsLayout() == 0) {
-                //              设置状态为排版中
-                developmentOrderBo.setStatus(DevelopmentOrderConstants.IN_TYPESETTING);
-            } else {
-                developmentOrderBo.setStatus(DevelopmentOrderConstants.PRINTING_IN_PROGRESS);
-            }
-        }
-    }
-}

+ 0 - 15
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/CompletedStatusServiceImpl.java

@@ -1,15 +0,0 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-
-/**
- * 已完成状态实现类
- */
-public class CompletedStatusServiceImpl implements DevelopmentOrderState {
-    @Override
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-
-    }
-}

+ 0 - 32
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/ConfirmTheStatusInProgressServiceImpl.java

@@ -1,32 +0,0 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.common.core.constant.DevelopmentOrderConstants;
-
-import java.util.Date;
-
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
-
-/**
- * 确认中状态实现类
- */
-public class ConfirmTheStatusInProgressServiceImpl implements DevelopmentOrderState {
-    @Override
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-        if ((developmentOrderVo.getConfirmUserid() == null || developmentOrderVo.getConfirmUserid() == 0) &&
-                developmentOrderVo.getPaperDesignFile() == null) {
-            assertNotLongBlank(developmentOrderBo.getConfirmUserid(), "订单" + developmentOrderBo.getOrderNum() + ":确认人不能为空");
-            assertNotBlank(developmentOrderBo.getPaperDesignFile(), "订单" + developmentOrderBo.getOrderNum() + ":纸样文件不能为空");
-        } else {
-            //          设置确认结束时间
-            developmentOrderBo.setStatus2EndTime(new Date());
-//          设置调色开始时间
-            developmentOrderBo.setStatus3StartTime(new Date());
-//                  设置状态为调色中
-            developmentOrderBo.setStatus(DevelopmentOrderConstants.IN_COLOR_ADJUSTMENT);
-        }
-    }
-}

+ 0 - 22
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/PendingStatusServiceImpl.java

@@ -1,22 +0,0 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.common.core.constant.DevelopmentOrderConstants;
-
-import java.util.Date;
-
-/**
- * 待处理状态实现类
- */
-
-public class PendingStatusServiceImpl implements DevelopmentOrderState {
-    @Override
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-        //      设置状态为画图中
-        developmentOrderBo.setStatus(DevelopmentOrderConstants.IN_THE_DRAWING);
-        //      设置画图开始时间
-        developmentOrderBo.setStatus1StartTime(new Date());
-    }
-}

+ 0 - 30
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/PrintingStatusServiceImpl.java

@@ -1,30 +0,0 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.common.core.constant.DevelopmentOrderConstants;
-
-import java.util.Date;
-
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
-
-/**
- * 打版状态实现类
- */
-public class PrintingStatusServiceImpl implements DevelopmentOrderState {
-    @Override
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-        if ((developmentOrderVo.getPatternUserid() == null || developmentOrderVo.getPatternUserid() == 0) &&
-                developmentOrderVo.getPatternFile() == null) {
-            assertNotLongBlank(developmentOrderBo.getPatternUserid(), "订单" + developmentOrderBo.getOrderNum() + ":打版人不能为空");
-            assertNotBlank(developmentOrderBo.getPatternFile(), "订单" + developmentOrderBo.getOrderNum() + ":打版文件不能为空");
-        } else {
-            //              设置打版结束时间
-            developmentOrderBo.setStatus5EndTime(new Date());
-//                  设置状态为已完成
-            developmentOrderBo.setStatus(DevelopmentOrderConstants.COMPLETED);
-        }
-    }
-}

+ 0 - 32
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/StatusInTypesettingServiceImpl.java

@@ -1,32 +0,0 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
-
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.common.core.constant.DevelopmentOrderConstants;
-
-import java.util.Date;
-
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
-
-/**
- * 排版中状态实现类
- */
-public class StatusInTypesettingServiceImpl implements DevelopmentOrderState {
-    @Override
-    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
-        if ((developmentOrderVo.getLayoutUserid() == null || developmentOrderVo.getLayoutUserid() == 0) &&
-                developmentOrderVo.getLayoutFile() == null) {
-            assertNotLongBlank(developmentOrderBo.getLayoutUserid(), "订单" + developmentOrderBo.getOrderNum() + ":排版人不能为空");
-            assertNotBlank(developmentOrderBo.getLayoutFile(), "订单" + developmentOrderBo.getOrderNum() + ":排版文件不能为空");
-        } else {
-            //      设置排版结束时间
-            developmentOrderBo.setStatus4EndTime(new Date());
-            //      设置打版开始时间
-            developmentOrderBo.setStatus5StartTime(new Date());
-            //      设置状态为打版中
-            developmentOrderBo.setStatus(DevelopmentOrderConstants.PRINTING_IN_PROGRESS);
-        }
-    }
-}

+ 0 - 7
ruoyi-modules/ruoyi-bulkOrder/src/main/resources/mapper/BulkOrderManagementMapper.xml

@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
-        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.dromara.bulk.mapper.BulkOrderManagementMapper">
-
-</mapper>

+ 0 - 4
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/bulk/service/BulkOrderManagementService.java

@@ -1,4 +0,0 @@
-package org.dromara.bulk.service;
-
-public interface BulkOrderManagementService {
-}

+ 0 - 10
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/bulk/service/impl/BulkOrderManagementServiceImpl.java

@@ -1,10 +0,0 @@
-package org.dromara.bulk.service.impl;
-
-import lombok.RequiredArgsConstructor;
-import org.dromara.bulk.service.BulkOrderManagementService;
-import org.springframework.stereotype.Service;
-
-@Service
-@RequiredArgsConstructor
-public class BulkOrderManagementServiceImpl implements BulkOrderManagementService {
-}

+ 24 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/context/DevelopmentOrderContext.java

@@ -0,0 +1,24 @@
+package org.dromara.management.context;
+
+import lombok.Setter;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+/**
+ * 状态模式上下文
+ */
+@Setter
+public class DevelopmentOrderContext {
+
+    private DevelopmentOrderStateService currentState;
+
+    public DevelopmentOrderContext(DevelopmentOrderStateService initialState) {
+        this.currentState = initialState;
+    }
+
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        currentState.handle(developmentOrderBo, developmentOrderVo);
+    }
+
+}

+ 15 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/controller/BulkOrderController.java

@@ -0,0 +1,15 @@
+package org.dromara.management.controller;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.service.BulkOrderService;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/development/bulkOrder")
+@RequiredArgsConstructor
+public class BulkOrderController {
+
+    private final BulkOrderService bulkOrderService;
+
+}

+ 5 - 6
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/controller/DevelopmentOrderController.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/controller/DevelopmentOrderController.java

@@ -1,15 +1,14 @@
-package org.dromara.bulk.controller;
+package org.dromara.management.controller;
 
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import lombok.RequiredArgsConstructor;
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderTableDataInfo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderService;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderTableDataInfo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
 import org.dromara.common.core.domain.R;
 import org.dromara.common.core.validate.AddGroup;
 import org.dromara.common.core.validate.EditGroup;
-import org.dromara.common.core.validate.QueryGroup;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.web.core.BaseController;
 import org.springframework.validation.annotation.Validated;

+ 3 - 3
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/controller/DevelopmentOrderRemarkController.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/controller/DevelopmentOrderRemarkController.java

@@ -1,8 +1,8 @@
-package org.dromara.bulk.controller;
+package org.dromara.management.controller;
 
 import lombok.RequiredArgsConstructor;
-import org.dromara.bulk.domain.bo.DevelopmentOrderRemarkBo;
-import org.dromara.bulk.service.DevelopmentOrderService;
+import org.dromara.management.domain.bo.DevelopmentOrderRemarkBo;
+import org.dromara.management.service.DevelopmentOrderService;
 import org.dromara.common.core.domain.R;
 import org.dromara.common.web.core.BaseController;
 import org.springframework.validation.annotation.Validated;

+ 58 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/BulkOrder.java

@@ -0,0 +1,58 @@
+package org.dromara.management.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.tenant.core.TenantEntity;
+
+import java.util.Date;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("fa_template_dahuo_order")
+public class BulkOrder extends TenantEntity {
+
+    private int id;
+
+    /**
+     * 开发订单ID
+     */
+    private int devOrderid;
+
+    /**
+     * 订单号
+     */
+    private String orderNum;
+
+    /**
+     * 纸样文件
+     */
+    private String paperDesignFile;
+
+    /**
+     * 排大货全码截图
+     */
+    private String plateFile;
+
+    /**
+     * 0待排大货1排大货中2大货已完成
+     */
+    private int status;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_1StartTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_1EndTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_2StartTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_2EndTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_3StartTime;
+
+}

+ 24 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/DevelopOrderLogs.java

@@ -0,0 +1,24 @@
+package org.dromara.management.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@TableName("fa_template_dev_order_log")
+public class DevelopOrderLogs {
+
+    private int id;
+
+    private int devOrderid;
+
+    private String name;
+
+    private String content;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+}

+ 5 - 3
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/DevelopmentOrder.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/DevelopmentOrder.java

@@ -1,5 +1,7 @@
-package org.dromara.bulk.domain;
+package org.dromara.management.domain;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
@@ -7,7 +9,6 @@ import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
 import org.dromara.common.tenant.core.TenantEntity;
 
-import java.time.LocalDateTime;
 import java.util.Date;
 
 /**
@@ -19,6 +20,7 @@ import java.util.Date;
 @EqualsAndHashCode(callSuper = true)
 public class DevelopmentOrder extends TenantEntity {
 
+    @TableId(type = IdType.AUTO)
     private int id;
 
     /**
@@ -119,7 +121,7 @@ public class DevelopmentOrder extends TenantEntity {
     private Long status;
 
     /**
-     * 是否排版
+     * 是否排版 0:是 1:否
      */
     private Integer isLayout;
 

+ 1 - 1
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/DevelopmentOrderRemark.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/DevelopmentOrderRemark.java

@@ -1,4 +1,4 @@
-package org.dromara.bulk.domain;
+package org.dromara.management.domain;
 
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;

+ 60 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/BulkOrderBo.java

@@ -0,0 +1,60 @@
+package org.dromara.management.domain.bo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.core.validate.EditGroup;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
+
+import java.util.Date;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class BulkOrderBo extends BaseEntity {
+
+    @NotNull(message = "ID不能为空", groups = {EditGroup.class})
+    private int id;
+
+    /**
+     * 开发订单ID
+     */
+    private int devOrderid;
+
+    /**
+     * 订单号
+     */
+    private String orderNum;
+
+    /**
+     * 纸样文件
+     */
+    private String paperDesignFile;
+
+    /**
+     * 排大货全码截图
+     */
+    private String plateFile;
+
+    /**
+     * 0待排大货1排大货中2大货已完成
+     */
+    private int status;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_1StartTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_1EndTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_2StartTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_2EndTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_3StartTime;
+
+    private DevelopmentOrderBo developmentOrderBo;
+}

+ 26 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/DevelopOrderLogsBo.java

@@ -0,0 +1,26 @@
+package org.dromara.management.domain.bo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
+import org.dromara.management.domain.DevelopOrderLogs;
+
+import java.util.Date;
+
+@Data
+@AutoMapper(target = DevelopOrderLogs.class)
+public class DevelopOrderLogsBo {
+
+    private int id;
+
+    private int devOrderid;
+
+    private String name;
+
+    private String content;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+}

+ 2 - 3
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/bo/DevelopmentOrderBo.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/DevelopmentOrderBo.java

@@ -1,4 +1,4 @@
-package org.dromara.bulk.domain.bo;
+package org.dromara.management.domain.bo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.github.linpeilie.annotations.AutoMapper;
@@ -7,12 +7,11 @@ import jakarta.validation.constraints.NotNull;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
-import org.dromara.bulk.domain.DevelopmentOrder;
+import org.dromara.management.domain.DevelopmentOrder;
 import org.dromara.common.core.validate.AddGroup;
 import org.dromara.common.core.validate.EditGroup;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
 
-import java.time.LocalDateTime;
 import java.util.Date;
 
 /**

+ 2 - 2
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/bo/DevelopmentOrderRemarkBo.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/bo/DevelopmentOrderRemarkBo.java

@@ -1,11 +1,11 @@
-package org.dromara.bulk.domain.bo;
+package org.dromara.management.domain.bo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.github.linpeilie.annotations.AutoMapper;
 import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.NotNull;
 import lombok.Data;
-import org.dromara.bulk.domain.DevelopmentOrderRemark;
+import org.dromara.management.domain.DevelopmentOrderRemark;
 
 import java.io.Serializable;
 import java.util.Date;

+ 58 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/BulkOrderVo.java

@@ -0,0 +1,58 @@
+package org.dromara.management.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
+import org.dromara.common.tenant.core.TenantEntity;
+
+import java.util.Date;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class BulkOrderVo extends BaseEntity {
+
+    private int id;
+
+    /**
+     * 开发订单ID
+     */
+    private int devOrderid;
+
+    /**
+     * 订单号
+     */
+    private String orderNum;
+
+    /**
+     * 纸样文件
+     */
+    private String paperDesignFile;
+
+    /**
+     * 排大货全码截图
+     */
+    private String plateFile;
+
+    /**
+     * 0待排大货1排大货中2大货已完成
+     */
+    private int status;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_1StartTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_1EndTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_2StartTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_2EndTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date status_3StartTime;
+
+}

+ 26 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopOrderLogsVo.java

@@ -0,0 +1,26 @@
+package org.dromara.management.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.github.linpeilie.annotations.AutoMapper;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
+import org.dromara.management.domain.DevelopOrderLogs;
+
+import java.util.Date;
+
+@Data
+@AutoMapper(target = DevelopOrderLogs.class)
+public class DevelopOrderLogsVo {
+
+    private int id;
+
+    private int devOrderid;
+
+    private String name;
+
+    private String content;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+}

+ 2 - 2
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/vo/DevelopmentOrderRemarkVo.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopmentOrderRemarkVo.java

@@ -1,9 +1,9 @@
-package org.dromara.bulk.domain.vo;
+package org.dromara.management.domain.vo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.github.linpeilie.annotations.AutoMapper;
 import lombok.Data;
-import org.dromara.bulk.domain.DevelopmentOrderRemark;
+import org.dromara.management.domain.DevelopmentOrderRemark;
 
 import java.io.Serializable;
 import java.util.Date;

+ 1 - 1
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/vo/DevelopmentOrderTableDataInfo.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopmentOrderTableDataInfo.java

@@ -1,4 +1,4 @@
-package org.dromara.bulk.domain.vo;
+package org.dromara.management.domain.vo;
 
 import cn.hutool.http.HttpStatus;
 import com.baomidou.mybatisplus.core.metadata.IPage;

+ 3 - 7
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/domain/vo/DevelopmentOrderVo.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/domain/vo/DevelopmentOrderVo.java

@@ -1,17 +1,13 @@
-package org.dromara.bulk.domain.vo;
+package org.dromara.management.domain.vo;
 
-import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.github.linpeilie.annotations.AutoMapper;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
-import org.dromara.bulk.domain.DevelopmentOrder;
-import org.dromara.common.core.domain.dto.OssDTO;
+import org.dromara.management.domain.DevelopmentOrder;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
-import org.dromara.common.tenant.core.TenantEntity;
 
-import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.List;
 
@@ -169,7 +165,7 @@ public class DevelopmentOrderVo extends BaseEntity {
     private Integer status;
 
     /**
-     * 是否排版
+     * 是否排版 0:是 1:否
      */
     private Integer isLayout;
 

+ 29 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/BulkOrderMapper.java

@@ -0,0 +1,29 @@
+package org.dromara.management.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+import org.dromara.management.domain.BulkOrder;
+import org.dromara.management.domain.vo.BulkOrderVo;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+
+@Mapper
+public interface BulkOrderMapper extends BaseMapperPlus<BulkOrder, BulkOrderVo> {
+
+    Page<BulkOrderVo> getList(@Param("page") Page<BulkOrder> page, @Param("ew") QueryWrapper<BulkOrder> queryWrapper);
+
+    /**
+     * 批量查询各状态的数量
+     *
+     * @param statusCodes 状态列表
+     * @return 状态统计结果
+     */
+    List<Map<String, Object>> countStatusBatch(@Param("statusCodes") Collection<Integer> statusCodes);
+
+    int getCountWithCondition(@Param("status") Integer status, @Param("statusFieldName") String statusFieldName);
+}

+ 10 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/DevelopOrderLogsMapper.java

@@ -0,0 +1,10 @@
+package org.dromara.management.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+import org.dromara.management.domain.DevelopOrderLogs;
+import org.dromara.management.domain.vo.DevelopOrderLogsVo;
+
+@Mapper
+public interface DevelopOrderLogsMapper extends BaseMapperPlus<DevelopOrderLogs, DevelopOrderLogsVo> {
+}

+ 9 - 4
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/mapper/DevelopmentOrderMapper.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/DevelopmentOrderMapper.java

@@ -1,12 +1,15 @@
-package org.dromara.bulk.mapper;
+package org.dromara.management.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Select;
-import org.dromara.bulk.domain.DevelopmentOrder;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.domain.DevelopmentOrder;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
 import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
 
+import java.sql.Wrapper;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
@@ -14,6 +17,8 @@ import java.util.Map;
 @Mapper
 public interface DevelopmentOrderMapper extends BaseMapperPlus<DevelopmentOrder, DevelopmentOrderVo> {
 
+    Page<DevelopmentOrderVo> getList(@Param("page") Page<DevelopmentOrderVo> page, @Param("ew") LambdaQueryWrapper<DevelopmentOrder> wrapper);
+
     /**
      * 批量查询各状态的数量
      *

+ 3 - 3
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/mapper/DevelopmentOrderRemarkMapper.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/mapper/DevelopmentOrderRemarkMapper.java

@@ -1,8 +1,8 @@
-package org.dromara.bulk.mapper;
+package org.dromara.management.mapper;
 
 import org.apache.ibatis.annotations.Mapper;
-import org.dromara.bulk.domain.DevelopmentOrderRemark;
-import org.dromara.bulk.domain.vo.DevelopmentOrderRemarkVo;
+import org.dromara.management.domain.DevelopmentOrderRemark;
+import org.dromara.management.domain.vo.DevelopmentOrderRemarkVo;
 import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
 
 @Mapper

+ 17 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/BulkOrderService.java

@@ -0,0 +1,17 @@
+package org.dromara.management.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.management.domain.BulkOrder;
+import org.dromara.management.domain.bo.BulkOrderBo;
+import org.dromara.management.domain.vo.BulkOrderVo;
+import org.dromara.management.domain.vo.DevelopmentOrderTableDataInfo;
+
+import java.util.List;
+
+public interface BulkOrderService extends IService<BulkOrder> {
+
+    DevelopmentOrderTableDataInfo<BulkOrderVo> getList(BulkOrderBo bo, PageQuery pageQuery);
+
+    boolean editBulkOrder(List<BulkOrderBo> bo);
+}

+ 43 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/DevelopmentOrderService.java

@@ -0,0 +1,43 @@
+package org.dromara.management.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.dromara.management.domain.DevelopmentOrder;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.bo.DevelopmentOrderRemarkBo;
+import org.dromara.management.domain.vo.DevelopmentOrderTableDataInfo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.common.mybatis.core.page.PageQuery;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+public interface DevelopmentOrderService extends IService<DevelopmentOrder> {
+
+    DevelopmentOrderTableDataInfo<DevelopmentOrderVo> getList(DevelopmentOrderBo developmentOrderBo, PageQuery pageQuery);
+
+    Map<Integer, String> getStatusCount(Set<Integer> STATUS_CODES, Map<Integer, String> SPECIAL_STATUS_FIELDS);
+
+    boolean insert(DevelopmentOrderBo developmentOrder);
+
+    boolean update(List<DevelopmentOrderBo> developmentOrderBo);
+
+    int delete(Long[] id);
+
+    DevelopmentOrderVo selectById(int id);
+
+    /**
+     * 状态参数校验
+     * @param developmentOrderBo
+     */
+    void checkStatus(DevelopmentOrderBo developmentOrderBo);
+
+    /**
+     * 新增备注
+     * @param developmentOrderBo
+     * @return
+     */
+    int addRemark(DevelopmentOrderRemarkBo developmentOrderBo);
+
+    void insertDevelopmentOrderLogs(int devOrderId, String content);
+}

+ 14 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/DevelopmentOrderStateService.java

@@ -0,0 +1,14 @@
+package org.dromara.management.service;
+
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+
+/**
+ * 订单状态模式
+ */
+
+public interface DevelopmentOrderStateService {
+
+    void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo);
+
+}

+ 25 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/CancelledStatusServiceImpl.java

@@ -0,0 +1,25 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+import java.util.Date;
+
+/**
+ * 已取消状态实现类
+ */
+@RequiredArgsConstructor
+public class CancelledStatusServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+//      设置取消时间
+        developmentOrderBo.setCancelTime(new Date());
+        developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "已取消开发任务");
+    }
+}

+ 37 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/ColorGradingStatusServiceImpl.java

@@ -0,0 +1,37 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+import java.util.Date;
+
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
+
+/**
+ * 调色中状态实现类
+ */
+@RequiredArgsConstructor
+public class ColorGradingStatusServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        if ((developmentOrderVo.getColorUserid() == null || developmentOrderVo.getColorUserid() == 0) &&
+                developmentOrderVo.getColorFile() == null) {
+            assertNotLongBlank(developmentOrderBo.getColorUserid(), "订单" + developmentOrderBo.getOrderNum() + ":调色人不能为空");
+            assertNotBlank(developmentOrderBo.getColorFile(), "订单" + developmentOrderBo.getOrderNum() + ":调色文件不能为空");
+        } else {
+            //          设置确认结束时间
+            developmentOrderBo.setStatus3EndTime(new Date());
+            //          设置调色开始时间
+            developmentOrderBo.setStatus2StartTime(new Date());
+            developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "确认完成");
+            developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "调色中");
+        }
+    }
+}

+ 34 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/CompletedStatusServiceImpl.java

@@ -0,0 +1,34 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+import java.util.Date;
+
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
+
+/**
+ * 已完成状态实现类
+ */
+@RequiredArgsConstructor
+public class CompletedStatusServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        if ((developmentOrderBo.getPatternUserid() == null || developmentOrderBo.getPatternUserid() == 0) &&
+                developmentOrderBo.getPaperDesignFile() == null) {
+            assertNotLongBlank(developmentOrderBo.getPatternUserid(), "订单" + developmentOrderBo.getOrderNum() + ":打版人不能为空");
+            assertNotBlank(developmentOrderBo.getPatternFile(), "订单" + developmentOrderBo.getOrderNum() + ":打版文件不能为空");
+        } else {
+            //              设置打版结束时间
+            developmentOrderBo.setStatus5EndTime(new Date());
+            developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "打版完成");
+        }
+    }
+}

+ 37 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/ConfirmTheStatusInProgressServiceImpl.java

@@ -0,0 +1,37 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+import java.util.Date;
+
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
+
+/**
+ * 确认中状态实现类
+ */
+@RequiredArgsConstructor
+public class ConfirmTheStatusInProgressServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        if ((developmentOrderVo.getConfirmUserid() == null || developmentOrderVo.getConfirmUserid() == 0) &&
+                developmentOrderVo.getPaperDesignFile() == null) {
+            assertNotLongBlank(developmentOrderBo.getConfirmUserid(), "订单" + developmentOrderBo.getOrderNum() + ":确认人不能为空");
+            assertNotBlank(developmentOrderBo.getPaperDesignFile(), "订单" + developmentOrderBo.getOrderNum() + ":纸样文件不能为空");
+        } else {
+            //          设置画图结束时间
+            developmentOrderBo.setStatus1EndTime(new Date());
+//          设置确认开始时间
+            developmentOrderBo.setStatus3StartTime(new Date());
+            developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "画图完成");
+            developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "确认中");
+        }
+    }
+}

+ 30 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/ModifyingStatusServiceImpl.java

@@ -0,0 +1,30 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+/**
+ * 修改中状态实现类
+ */
+@RequiredArgsConstructor
+public class ModifyingStatusServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        developmentOrderBo.setPaperDesignFile(null);
+        developmentOrderBo.setConfirmUserid(null);
+        developmentOrderBo.setColorFile(null);
+        developmentOrderBo.setColorUserid(null);
+        developmentOrderBo.setLayoutFile(null);
+        developmentOrderBo.setLayoutUserid(null);
+        developmentOrderBo.setPatternFile(null);
+        developmentOrderBo.setPatternUserid(null);
+        developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "修改中");
+
+    }
+}

+ 16 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/PendingStatusServiceImpl.java

@@ -0,0 +1,16 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+/**
+ * 待处理状态实现类
+ */
+
+public class PendingStatusServiceImpl implements DevelopmentOrderStateService {
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+
+    }
+}

+ 39 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/PrintingStatusServiceImpl.java

@@ -0,0 +1,39 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+
+import java.util.Date;
+
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
+
+/**
+ * 打版状态实现类
+ */
+@RequiredArgsConstructor
+public class PrintingStatusServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        if ((developmentOrderVo.getPatternUserid() == null || developmentOrderVo.getPatternUserid() == 0) &&
+                developmentOrderVo.getPatternFile() == null) {
+            assertNotLongBlank(developmentOrderBo.getPatternUserid(), "订单" + developmentOrderBo.getOrderNum() + ":打版人不能为空");
+            assertNotBlank(developmentOrderBo.getPatternFile(), "订单" + developmentOrderBo.getOrderNum() + ":打版文件不能为空");
+        } else {
+            if (developmentOrderVo.getIsLayout() != 0) {
+                //           设置排版结束时间
+                developmentOrderBo.setStatus4EndTime(new Date());
+                developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "排版完成");
+                //          设置打版开始时间
+                developmentOrderBo.setStatus5StartTime(new Date());
+                developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "打版中");
+            }
+        }
+    }
+}

+ 16 - 14
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/stateModeServiceImpl/StateInDrawingServiceImpl.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/StateServiceInDrawingServiceImpl.java

@@ -1,19 +1,24 @@
-package org.dromara.bulk.service.stateModeServiceImpl;
+package org.dromara.management.service.developmentStateModeImpl;
 
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.common.core.constant.DevelopmentOrderConstants;
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
 
 import java.util.Date;
 
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
-import static org.dromara.bulk.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
 
 /**
  * 画图中状态实现类
  */
-public class StateInDrawingServiceImpl implements DevelopmentOrderState {
+@RequiredArgsConstructor
+public class StateServiceInDrawingServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
     @Override
     public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
         if ((developmentOrderVo.getDesignUserid() == null || developmentOrderVo.getDesignUserid() == 0) && developmentOrderVo.getDesignFile() == null
@@ -23,12 +28,9 @@ public class StateInDrawingServiceImpl implements DevelopmentOrderState {
             assertNotBlank(developmentOrderBo.getDesignImage(), "订单" + developmentOrderBo.getOrderNum() + ":设计图片不能为空");
             assertNotBlank(developmentOrderBo.getDesignMaterial(), "订单" + developmentOrderBo.getOrderNum() + ":素材图片不能为空");
         } else {
-            //          设置画图结束时间
-            developmentOrderBo.setStatus1EndTime(new Date());
-            //          设置确认开始时间
-            developmentOrderBo.setStatus2StartTime(new Date());
-            //          设置状态为确认中
-            developmentOrderBo.setStatus(DevelopmentOrderConstants.CONFIRMING_IN_PROGRESS);
+            //          设置画图开始时间
+            developmentOrderBo.setStatus1StartTime(new Date());
+            developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "画图中");
         }
     }
 }

+ 49 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/developmentStateModeImpl/StatusInTypesettingServiceImpl.java

@@ -0,0 +1,49 @@
+package org.dromara.management.service.developmentStateModeImpl;
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
+import org.dromara.common.core.constant.DevelopmentOrderConstants;
+
+import java.util.Date;
+
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotBlank;
+import static org.dromara.management.service.impl.DevelopmentOrderServiceImpl.assertNotLongBlank;
+
+/**
+ * 排版中状态实现类
+ */
+@RequiredArgsConstructor
+public class StatusInTypesettingServiceImpl implements DevelopmentOrderStateService {
+
+    private final DevelopmentOrderService developmentOrderService;
+
+    @Override
+    public void handle(DevelopmentOrderBo developmentOrderBo, DevelopmentOrderVo developmentOrderVo) {
+        if ((developmentOrderVo.getLayoutUserid() == null || developmentOrderVo.getLayoutUserid() == 0) &&
+                developmentOrderVo.getLayoutFile() == null) {
+            assertNotLongBlank(developmentOrderBo.getLayoutUserid(), "订单" + developmentOrderBo.getOrderNum() + ":排版人不能为空");
+            assertNotBlank(developmentOrderBo.getLayoutFile(), "订单" + developmentOrderBo.getOrderNum() + ":排版文件不能为空");
+        } else {
+            //          判断是否排版
+            if (developmentOrderVo.getIsLayout() != 1) {
+                developmentOrderBo.setStatus(DevelopmentOrderConstants.PRINTING_IN_PROGRESS);
+                //      设置调色结束时间
+                developmentOrderBo.setStatus2EndTime(new Date());
+                developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "调色完成");
+                //      设置打版开始
+                developmentOrderBo.setStatus5StartTime(new Date());
+                developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "打版中");
+            } else {
+                //      设置调色结束时间
+                developmentOrderBo.setStatus2EndTime(new Date());
+                developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "调色完成");
+                //      设置排版开始时间
+                developmentOrderBo.setStatus4StartTime(new Date());
+                developmentOrderService.insertDevelopmentOrderLogs(developmentOrderBo.getId(), "排版中");
+            }
+        }
+    }
+}

+ 89 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/impl/BulkOrderServiceImpl.java

@@ -0,0 +1,89 @@
+package org.dromara.management.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import org.dromara.common.core.constant.DevelopmentBulkOrderConstants;
+import org.dromara.common.core.utils.StringUtils;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.management.domain.BulkOrder;
+import org.dromara.management.domain.bo.BulkOrderBo;
+import org.dromara.management.domain.vo.BulkOrderVo;
+import org.dromara.management.domain.vo.DevelopmentOrderTableDataInfo;
+import org.dromara.management.mapper.BulkOrderMapper;
+import org.dromara.management.service.BulkOrderService;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDate;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import static cn.hutool.core.date.LocalDateTimeUtil.parseDate;
+
+@Service
+@RequiredArgsConstructor
+public class BulkOrderServiceImpl extends ServiceImpl<BulkOrderMapper, BulkOrder> implements BulkOrderService {
+
+    private final BulkOrderMapper bulkOrderMapper;
+    private final DevelopmentOrderService developmentOrderService;
+
+    private static final Set<Integer> STATUS_CODES = Set.of(
+            DevelopmentBulkOrderConstants.AWAIT_BULK_ORDER,
+            DevelopmentBulkOrderConstants.ARRANGE_BULK_ORDERS,
+            DevelopmentBulkOrderConstants.THE_BULK_ORDER_HAS_BEEN_COMPLETED
+    );
+
+    private static final Map<Integer, String> SPECIAL_STATUS_FIELDS = new HashMap<>();
+
+    static {
+        SPECIAL_STATUS_FIELDS.put(DevelopmentBulkOrderConstants.AWAIT_BULK_ORDER, "status_1_end_time");
+    }
+
+    @Override
+    public DevelopmentOrderTableDataInfo<BulkOrderVo> getList(BulkOrderBo bo, PageQuery pageQuery) {
+        QueryWrapper<BulkOrder> queryWrapper = new QueryWrapper<>();
+        addDynamicConditions(queryWrapper, bo);
+        // 获取所有状态的数量(画图中、确认中、修改中、调色中、排版中、打版中字段为:进行中/总数量、其余为:总数量)
+        Map<Integer, String> statusCount = developmentOrderService.getStatusCount(STATUS_CODES, SPECIAL_STATUS_FIELDS);
+        return DevelopmentOrderTableDataInfo.build(bulkOrderMapper.getList(pageQuery.build(), queryWrapper), statusCount);
+    }
+
+    /**
+     * 构建动态查询条件
+     *
+     * @param queryWrapper
+     * @param bo
+     */
+    private void addDynamicConditions(QueryWrapper<BulkOrder> queryWrapper, BulkOrderBo bo) {
+        Map<String, Object> params = bo.getParams();
+        // 字符串字段处理
+        if (StringUtils.isNotBlank(bo.getDevelopmentOrderBo().getCustomerName())) {
+            queryWrapper.like("fo.customer_name", bo.getDevelopmentOrderBo().getCustomerName());
+        }
+        if (StringUtils.isNotBlank(bo.getDevelopmentOrderBo().getMianliao())) {
+            queryWrapper.like("fo.mianliao", bo.getDevelopmentOrderBo().getMianliao());
+        }
+        if (StringUtils.isNotBlank(bo.getDevelopmentOrderBo().getKuanhao())) {
+            queryWrapper.like("fo.kuanhao", bo.getDevelopmentOrderBo().getKuanhao());
+        }
+        if (bo.getDevelopmentOrderBo().getStatus() != null) {
+            queryWrapper.eq("fo.status", bo.getDevelopmentOrderBo().getStatus());
+        }
+
+        // 时间范围处理
+        LocalDate startDate = parseDate((String) params.get("beginTime"));
+        LocalDate endDate = parseDate((String) params.get("endTime"));
+        if (startDate != null && endDate != null) {
+            queryWrapper.between("fo.create_time", startDate, endDate);
+        }
+    }
+
+    @Override
+    public boolean editBulkOrder(List<BulkOrderBo> bo) {
+
+        return false;
+    }
+}

+ 83 - 52
ruoyi-modules/ruoyi-bulkOrder/src/main/java/org/dromara/bulk/service/impl/DevelopmentOrderServiceImpl.java → ruoyi-modules/ruoyi-developmentManagement/src/main/java/org/dromara/management/service/impl/DevelopmentOrderServiceImpl.java

@@ -1,22 +1,24 @@
-package org.dromara.bulk.service.impl;
+package org.dromara.management.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
-import org.dromara.bulk.context.DevelopmentOrderContext;
-import org.dromara.bulk.domain.DevelopmentOrder;
-import org.dromara.bulk.domain.DevelopmentOrderRemark;
-import org.dromara.bulk.domain.bo.DevelopmentOrderBo;
-import org.dromara.bulk.domain.bo.DevelopmentOrderRemarkBo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderRemarkVo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderTableDataInfo;
-import org.dromara.bulk.domain.vo.DevelopmentOrderVo;
-import org.dromara.bulk.mapper.DevelopmentOrderMapper;
-import org.dromara.bulk.mapper.DevelopmentOrderRemarkMapper;
-import org.dromara.bulk.service.DevelopmentOrderService;
-import org.dromara.bulk.service.DevelopmentOrderState;
-import org.dromara.bulk.service.stateModeServiceImpl.*;
+import org.dromara.management.context.DevelopmentOrderContext;
+import org.dromara.management.domain.DevelopOrderLogs;
+import org.dromara.management.domain.DevelopmentOrder;
+import org.dromara.management.domain.DevelopmentOrderRemark;
+import org.dromara.management.domain.bo.DevelopmentOrderBo;
+import org.dromara.management.domain.bo.DevelopmentOrderRemarkBo;
+import org.dromara.management.domain.vo.DevelopmentOrderRemarkVo;
+import org.dromara.management.domain.vo.DevelopmentOrderTableDataInfo;
+import org.dromara.management.domain.vo.DevelopmentOrderVo;
+import org.dromara.management.mapper.DevelopOrderLogsMapper;
+import org.dromara.management.mapper.DevelopmentOrderMapper;
+import org.dromara.management.mapper.DevelopmentOrderRemarkMapper;
+import org.dromara.management.service.DevelopmentOrderService;
+import org.dromara.management.service.DevelopmentOrderStateService;
 import org.dromara.common.core.constant.DevelopmentOrderConstants;
 import org.dromara.common.core.exception.ServiceException;
 import org.dromara.common.core.service.OssService;
@@ -25,7 +27,9 @@ import org.dromara.common.core.utils.OrderNumberGenerator;
 import org.dromara.common.core.utils.StringUtils;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.satoken.utils.LoginHelper;
+import org.dromara.management.service.developmentStateModeImpl.*;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
@@ -37,11 +41,12 @@ import java.util.*;
  */
 @Service
 @RequiredArgsConstructor
-public class DevelopmentOrderServiceImpl implements DevelopmentOrderService {
+public class DevelopmentOrderServiceImpl extends ServiceImpl<DevelopmentOrderMapper, DevelopmentOrder> implements DevelopmentOrderService {
 
     private final DevelopmentOrderMapper developmentOrderMapper;
     private final DevelopmentOrderRemarkMapper developmentOrderRemarkMapper;
     private final OssService ossService;
+    private final DevelopOrderLogsMapper developOrderLogsMapper;
     /**
      * 创建所有状态的常量Set集合
      */
@@ -72,23 +77,12 @@ public class DevelopmentOrderServiceImpl implements DevelopmentOrderService {
         LambdaQueryWrapper<DevelopmentOrder> queryWrapper = new LambdaQueryWrapper<>();
         addDynamicConditions(queryWrapper, bo);
 
-        Page<DevelopmentOrderVo> page = developmentOrderMapper.selectVoPage(pageQuery.build(), queryWrapper);
-        page.getRecords().forEach(item -> {
-//          查询备注
-            QueryWrapper<DevelopmentOrderRemark> remarkQueryWrapper = new QueryWrapper<>();
-            remarkQueryWrapper.eq("template_dev_order_id", item.getId());
-            List<DevelopmentOrderRemarkVo> developmentOrderRemarkVoList = developmentOrderRemarkMapper.selectVoList(remarkQueryWrapper);
-            item.setDevelopmentOrderRemarkVoList(developmentOrderRemarkVoList);
-//          查询各个文件URL
-//            item.setColorFileList(ossService.selectByIds(item.getColorFile()));
-//            item.setDesignFileList(ossService.selectByIds(item.getDesignFile()));
-//            item.setDesignMaterialList(ossService.selectByIds(item.getDesignMaterial()));
-//            item.setDesignImageList(ossService.selectByIds(item.getDesignImage()));
-//            item.setPaperDesignFileList(ossService.selectByIds(item.getPaperDesignFile()));
-//            item.setPatternFileList(ossService.selectByIds(item.getPatternFile()));
-//            item.setRefernceImageList(ossService.selectByIds(item.getReferenceImage()));
-        });
-        Map<Integer, String> statusCount = getStatusCount();
+        Page<DevelopmentOrderVo> page = developmentOrderMapper.getList(pageQuery.build(), queryWrapper);
+        // 查询备注
+        getDevelopmentOrderRemark(page);
+
+        // 获取所有状态的数量(画图中、确认中、修改中、调色中、排版中、打版中字段为:进行中/总数量、其余为:总数量)
+        Map<Integer, String> statusCount = getStatusCount(STATUS_CODES, SPECIAL_STATUS_FIELDS);
         // 组装数据返回
         return DevelopmentOrderTableDataInfo.build(page, statusCount);
     }
@@ -98,7 +92,7 @@ public class DevelopmentOrderServiceImpl implements DevelopmentOrderService {
      *
      * @return
      */
-    public Map<Integer, String> getStatusCount() {
+    public Map<Integer, String> getStatusCount(Set<Integer> STATUS_CODES, Map<Integer, String> SPECIAL_STATUS_FIELDS) {
         // 调用 Mapper 方法获取 List<Map<String, Object>>
         List<Map<String, Object>> resultList = developmentOrderMapper.countStatusBatch(STATUS_CODES);
         // 将 List<Map<String, Object>> 转换为 Map<Long, Integer>
@@ -121,7 +115,7 @@ public class DevelopmentOrderServiceImpl implements DevelopmentOrderService {
             if (SPECIAL_STATUS_FIELDS.containsKey(status)) {
                 String fieldName = SPECIAL_STATUS_FIELDS.get(status);
                 int specialCount = developmentOrderMapper.getCountWithCondition(status, fieldName);
-                String combined = Objects.requireNonNullElse(specialCount, "0") + "/" + baseCount;
+                String combined = specialCount + "/" + baseCount;
                 statusCountMap.put(status, combined);
             }
         }
@@ -161,10 +155,16 @@ public class DevelopmentOrderServiceImpl implements DevelopmentOrderService {
         }
     }
 
+    @Transactional(rollbackFor = Exception.class)
     @Override
-    public int insert(DevelopmentOrderBo developmentOrder) {
-        developmentOrder.setOrderNum(OrderNumberGenerator.getInstance().generateOrderNumber());
-        return developmentOrderMapper.insert(MapstructUtils.convert(developmentOrder, DevelopmentOrder.class));
+    public boolean insert(DevelopmentOrderBo developmentOrderBo) {
+        developmentOrderBo.setOrderNum(OrderNumberGenerator.getInstance().generateOrderNumber());
+        DevelopmentOrder developmentOrder = MapstructUtils.convert(developmentOrderBo, DevelopmentOrder.class);
+        boolean flag = this.save(developmentOrder);
+        if (developmentOrder != null) {
+            insertDevelopmentOrderLogs(developmentOrder.getId(), "创建开发任务");
+        }
+        return flag;
     }
 
     @Override
@@ -198,29 +198,60 @@ public class DevelopmentOrderServiceImpl implements DevelopmentOrderService {
 
     @Override
     public void checkStatus(DevelopmentOrderBo developmentOrderBo) {
-        DevelopmentOrderVo developmentOrderVo = selectById(developmentOrderBo.getId());
-        developmentOrderBo.setOrderNum(developmentOrderVo.getOrderNum());
-        developmentOrderBo.setStatus(developmentOrderVo.getStatus());
-        DevelopmentOrderState initialState = switch (developmentOrderBo.getStatus()) {
+        if (developmentOrderBo.getStatus() != null) {
+            DevelopmentOrderVo developmentOrderVo = selectById(developmentOrderBo.getId());
+            developmentOrderBo.setOrderNum(developmentOrderVo.getOrderNum());
+            DevelopmentOrderStateService initialState = switch (developmentOrderBo.getStatus()) {
 //          待处理
-            case DevelopmentOrderConstants.PENDING_PROCESSING -> new PendingStatusServiceImpl();
+                case DevelopmentOrderConstants.PENDING_PROCESSING -> new PendingStatusServiceImpl();
 //          画图中
-            case DevelopmentOrderConstants.IN_THE_DRAWING -> new StateInDrawingServiceImpl();
+                case DevelopmentOrderConstants.IN_THE_DRAWING -> new StateServiceInDrawingServiceImpl(this);
 //          确认中
-            case DevelopmentOrderConstants.CONFIRMING_IN_PROGRESS -> new ConfirmTheStatusInProgressServiceImpl();
+                case DevelopmentOrderConstants.CONFIRMING_IN_PROGRESS ->
+                        new ConfirmTheStatusInProgressServiceImpl(this);
+//          修改中
+                case DevelopmentOrderConstants.UNDER_MODIFICATION -> new ModifyingStatusServiceImpl(this);
 //          调色中
-            case DevelopmentOrderConstants.IN_COLOR_ADJUSTMENT -> new ColorGradingStatusServiceImpl();
+                case DevelopmentOrderConstants.IN_COLOR_ADJUSTMENT -> new ColorGradingStatusServiceImpl(this);
 //          排版中
-            case DevelopmentOrderConstants.IN_TYPESETTING -> new StatusInTypesettingServiceImpl();
+                case DevelopmentOrderConstants.IN_TYPESETTING -> new StatusInTypesettingServiceImpl(this);
 //          打版中
-            case DevelopmentOrderConstants.PRINTING_IN_PROGRESS -> new PrintingStatusServiceImpl();
+                case DevelopmentOrderConstants.PRINTING_IN_PROGRESS -> new PrintingStatusServiceImpl(this);
 //          已完成
-            case DevelopmentOrderConstants.COMPLETED -> new CompletedStatusServiceImpl();
-            default -> throw new IllegalStateException("意外状态: " + developmentOrderBo.getStatus());
-        };
+                case DevelopmentOrderConstants.COMPLETED -> new CompletedStatusServiceImpl(this);
+//          已取消
+                case DevelopmentOrderConstants.CANCELLED -> new CancelledStatusServiceImpl(this);
+                default -> throw new IllegalStateException("意外状态: " + developmentOrderBo.getStatus());
+            };
+            DevelopmentOrderContext context = new DevelopmentOrderContext(initialState);
+            context.handle(developmentOrderBo, developmentOrderVo);
+        }
+    }
+
+    public void getDevelopmentOrderRemark(Page<DevelopmentOrderVo> page) {
+        page.getRecords().forEach(item -> {
+//          查询备注
+            QueryWrapper<DevelopmentOrderRemark> remarkQueryWrapper = new QueryWrapper<>();
+            remarkQueryWrapper.eq("template_dev_order_id", item.getId());
+            List<DevelopmentOrderRemarkVo> developmentOrderRemarkVoList = developmentOrderRemarkMapper.selectVoList(remarkQueryWrapper);
+            item.setDevelopmentOrderRemarkVoList(developmentOrderRemarkVoList);
+        });
+
+    }
 
-        DevelopmentOrderContext context = new DevelopmentOrderContext(initialState);
-        context.handle(developmentOrderBo, developmentOrderVo);
+    /**
+     * 新增开发日志
+     *
+     * @param devOrderId
+     * @param content
+     */
+    public void insertDevelopmentOrderLogs(int devOrderId, String content) {
+        DevelopOrderLogs developOrderLogs = new DevelopOrderLogs();
+        developOrderLogs.setName(LoginHelper.getUsername());
+        developOrderLogs.setContent(content);
+        developOrderLogs.setDevOrderid(devOrderId);
+        developOrderLogs.setCreateTime(new Date());
+        developOrderLogsMapper.insert(developOrderLogs);
     }
 
     public static void assertNotLongBlank(Long longId, String errorMessage) {

+ 36 - 0
ruoyi-modules/ruoyi-developmentManagement/src/main/resources/mapper/BulkOrderMapper.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.dromara.management.mapper.BulkOrderMapper">
+
+    <resultMap id="statusCountMap" type="map">
+        <id column="key" property="key" javaType="int"/>
+        <result column="value" property="value" javaType="int"/>
+    </resultMap>
+
+    <select id="getList" resultType="org.dromara.management.domain.vo.BulkOrderVo">
+        SELECT *
+        FROM fa_template_dahuo_order AS fd
+                 INNER JOIN fa_template_dev_order AS fo on fd.dev_orderid = fo.id
+            ${ew.getCustomSqlSegment}
+    </select>
+
+    <select id="countStatusBatch" parameterType="java.util.Collection" resultMap="statusCountMap">
+        SELECT `status` AS `key`, COUNT(*) AS `value`
+        FROM fa_template_dahuo_order
+        WHERE `status` IN
+        <foreach item="status" collection="statusCodes" open="(" separator="," close=")">
+            #{status}
+        </foreach>
+        GROUP BY `status`
+    </select>
+
+    <select id="getCountWithCondition" resultType="int">
+        select COUNT(*) from fa_template_dahuo_order where `status` = #{status}
+        <if test="statusFieldName != null and statusFieldName != ''">
+            AND ${statusFieldName} != 0
+        </if>
+    </select>
+
+</mapper>

+ 7 - 2
ruoyi-modules/ruoyi-bulkOrder/src/main/resources/mapper/DevelopmentOrderMapper.xml → ruoyi-modules/ruoyi-developmentManagement/src/main/resources/mapper/DevelopmentOrderMapper.xml

@@ -2,10 +2,15 @@
 <!DOCTYPE mapper
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.dromara.bulk.mapper.DevelopmentOrderMapper">
+<mapper namespace="org.dromara.management.mapper.DevelopmentOrderMapper">
+
+    <select id="getList" resultType="org.dromara.management.domain.vo.DevelopmentOrderVo">
+        select *
+        from fa_template_dev_order ${ew.getCustomSqlSegment}
+    </select>
 
     <resultMap id="statusCountMap" type="map">
-        <id column="key" property="key" javaType="long"/>
+        <id column="key" property="key" javaType="int"/>
         <result column="value" property="value" javaType="int"/>
     </resultMap>