24282 1 год назад
Родитель
Сommit
395df2a1e1
35 измененных файлов с 2525 добавлено и 2 удалено
  1. 536 0
      sd-business/src/main/java/com/sd/business/a-json/PriceSystemApi.json
  2. 536 0
      sd-business/src/main/java/com/sd/business/a-json/PriceSystemBomApi.json
  3. 564 0
      sd-business/src/main/java/com/sd/business/a-json/PriceSystemBomSpecApi.json
  4. 11 0
      sd-business/src/main/java/com/sd/business/controller/price/PriceBillingStandardController.java
  5. 36 0
      sd-business/src/main/java/com/sd/business/controller/price/PriceSystemBomController.java
  6. 36 0
      sd-business/src/main/java/com/sd/business/controller/price/PriceSystemBomSpecController.java
  7. 81 0
      sd-business/src/main/java/com/sd/business/controller/price/PriceSystemController.java
  8. 5 0
      sd-business/src/main/java/com/sd/business/entity/bom/dto/BomSelectDto.java
  9. 5 0
      sd-business/src/main/java/com/sd/business/entity/bom/vo/BomVo.java
  10. 2 2
      sd-business/src/main/java/com/sd/business/entity/department/po/Department.java
  11. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomDto.java
  12. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomSelectDto.java
  13. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomSpecDto.java
  14. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomSpecSelectDto.java
  15. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemDto.java
  16. 22 0
      sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemSelectDto.java
  17. 31 0
      sd-business/src/main/java/com/sd/business/entity/price/po/PriceSystem.java
  18. 41 0
      sd-business/src/main/java/com/sd/business/entity/price/po/PriceSystemBom.java
  19. 48 0
      sd-business/src/main/java/com/sd/business/entity/price/po/PriceSystemBomSpec.java
  20. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/vo/PriceSystemBomSpecVo.java
  21. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/vo/PriceSystemBomVo.java
  22. 17 0
      sd-business/src/main/java/com/sd/business/entity/price/vo/PriceSystemVo.java
  23. 26 0
      sd-business/src/main/java/com/sd/business/mapper/price/PriceSystemBomMapper.java
  24. 26 0
      sd-business/src/main/java/com/sd/business/mapper/price/PriceSystemBomSpecMapper.java
  25. 26 0
      sd-business/src/main/java/com/sd/business/mapper/price/PriceSystemMapper.java
  26. 23 0
      sd-business/src/main/java/com/sd/business/service/price/PriceSystemBomService.java
  27. 23 0
      sd-business/src/main/java/com/sd/business/service/price/PriceSystemBomSpecService.java
  28. 53 0
      sd-business/src/main/java/com/sd/business/service/price/PriceSystemService.java
  29. 4 0
      sd-business/src/main/java/com/sd/business/service/price/impl/PriceBillingStandardServiceImpl.java
  30. 31 0
      sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemBomServiceImpl.java
  31. 31 0
      sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemBomSpecServiceImpl.java
  32. 143 0
      sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemServiceImpl.java
  33. 16 0
      sd-business/src/main/resources/mapper/price/PriceSystemBomMapper.xml
  34. 17 0
      sd-business/src/main/resources/mapper/price/PriceSystemBomSpecMapper.xml
  35. 16 0
      sd-business/src/main/resources/mapper/price/PriceSystemMapper.xml

+ 536 - 0
sd-business/src/main/java/com/sd/business/a-json/PriceSystemApi.json

@@ -0,0 +1,536 @@
+{
+  "openapi": "3.0.1",
+  "tags": [
+    {
+      "name": "售价_售价体系"
+    }
+  ],
+  "paths": {
+    "/priceSystem/page": {
+      "post": {
+        "summary": "分页",
+        "tags": [
+          "售价_售价体系"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "pageNum",
+                  "pageSize"
+                ],
+                "title": null,
+                "properties": {
+                  "pageNum": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "页数",
+                    "properties": null,
+                    "items": null
+                  },
+                  "pageSize": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "每页大小",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": "object",
+                      "required": [
+                        "rows",
+                        "total"
+                      ],
+                      "title": null,
+                      "properties": {
+                        "rows": {
+                          "type": "array",
+                          "required": null,
+                          "title": "分页数据",
+                          "properties": null,
+                          "items": {
+                            "type": "object",
+                            "required": null,
+                            "title": null,
+                            "properties": {
+                              "id": {
+                                "type": "integer",
+                                "required": null,
+                                "title": "售价_售价体系id",
+                                "properties": null,
+                                "items": null
+                              },
+                              "name": {
+                                "type": "string",
+                                "required": null,
+                                "title": "售价体系",
+                                "properties": null,
+                                "items": null
+                              },
+                              "remark": {
+                                "type": "string",
+                                "required": null,
+                                "title": "备注",
+                                "properties": null,
+                                "items": null
+                              },
+                              "createTime": {
+                                "type": "string",
+                                "required": null,
+                                "title": "创建时间",
+                                "properties": null,
+                                "items": null
+                              },
+                              "updateTime": {
+                                "type": "string",
+                                "required": null,
+                                "title": "修改时间",
+                                "properties": null,
+                                "items": null
+                              }
+                            },
+                            "items": null
+                          }
+                        },
+                        "total": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "总条数",
+                          "properties": null,
+                          "items": null
+                        }
+                      },
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystem/detail": {
+      "post": {
+        "summary": "明细",
+        "tags": [
+          "售价_售价体系"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "id"
+                ],
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": "object",
+                      "required": null,
+                      "title": null,
+                      "properties": {
+                        "id": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "售价_售价体系id",
+                          "properties": null,
+                          "items": null
+                        },
+                        "name": {
+                          "type": "string",
+                          "required": null,
+                          "title": "售价体系",
+                          "properties": null,
+                          "items": null
+                        },
+                        "remark": {
+                          "type": "string",
+                          "required": null,
+                          "title": "备注",
+                          "properties": null,
+                          "items": null
+                        },
+                        "createTime": {
+                          "type": "string",
+                          "required": null,
+                          "title": "创建时间",
+                          "properties": null,
+                          "items": null
+                        },
+                        "updateTime": {
+                          "type": "string",
+                          "required": null,
+                          "title": "修改时间",
+                          "properties": null,
+                          "items": null
+                        }
+                      },
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystem/add": {
+      "post": {
+        "summary": "新增",
+        "tags": [
+          "售价_售价体系"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": null,
+                "title": null,
+                "properties": {
+                  "name": {
+                    "type": "string",
+                    "required": null,
+                    "title": "售价体系",
+                    "properties": null,
+                    "items": null
+                  },
+                  "remark": {
+                    "type": "string",
+                    "required": null,
+                    "title": "备注",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystem/edit": {
+      "post": {
+        "summary": "编辑",
+        "tags": [
+          "售价_售价体系"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": null,
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "name": {
+                    "type": "string",
+                    "required": null,
+                    "title": "售价体系",
+                    "properties": null,
+                    "items": null
+                  },
+                  "remark": {
+                    "type": "string",
+                    "required": null,
+                    "title": "备注",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystem/delete": {
+      "post": {
+        "summary": "删除",
+        "tags": [
+          "售价_售价体系"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "id"
+                ],
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}

+ 536 - 0
sd-business/src/main/java/com/sd/business/a-json/PriceSystemBomApi.json

@@ -0,0 +1,536 @@
+{
+  "openapi": "3.0.1",
+  "tags": [
+    {
+      "name": "售价_售价体系bom关联"
+    }
+  ],
+  "paths": {
+    "/priceSystemBom/page": {
+      "post": {
+        "summary": "分页",
+        "tags": [
+          "售价_售价体系bom关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "pageNum",
+                  "pageSize"
+                ],
+                "title": null,
+                "properties": {
+                  "pageNum": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "页数",
+                    "properties": null,
+                    "items": null
+                  },
+                  "pageSize": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "每页大小",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": "object",
+                      "required": [
+                        "rows",
+                        "total"
+                      ],
+                      "title": null,
+                      "properties": {
+                        "rows": {
+                          "type": "array",
+                          "required": null,
+                          "title": "分页数据",
+                          "properties": null,
+                          "items": {
+                            "type": "object",
+                            "required": null,
+                            "title": null,
+                            "properties": {
+                              "id": {
+                                "type": "integer",
+                                "required": null,
+                                "title": "售价_售价体系bom关联id",
+                                "properties": null,
+                                "items": null
+                              },
+                              "priceSystemId": {
+                                "type": "integer",
+                                "required": null,
+                                "title": "售价体系id",
+                                "properties": null,
+                                "items": null
+                              },
+                              "priceBillingStandardId": {
+                                "type": "integer",
+                                "required": null,
+                                "title": "加工报价 加工计费标准id",
+                                "properties": null,
+                                "items": null
+                              },
+                              "createTime": {
+                                "type": "string",
+                                "required": null,
+                                "title": "创建时间",
+                                "properties": null,
+                                "items": null
+                              },
+                              "updateTime": {
+                                "type": "string",
+                                "required": null,
+                                "title": "修改时间",
+                                "properties": null,
+                                "items": null
+                              }
+                            },
+                            "items": null
+                          }
+                        },
+                        "total": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "总条数",
+                          "properties": null,
+                          "items": null
+                        }
+                      },
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBom/detail": {
+      "post": {
+        "summary": "明细",
+        "tags": [
+          "售价_售价体系bom关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "id"
+                ],
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系bom关联id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": "object",
+                      "required": null,
+                      "title": null,
+                      "properties": {
+                        "id": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "售价_售价体系bom关联id",
+                          "properties": null,
+                          "items": null
+                        },
+                        "priceSystemId": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "售价体系id",
+                          "properties": null,
+                          "items": null
+                        },
+                        "priceBillingStandardId": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "加工报价 加工计费标准id",
+                          "properties": null,
+                          "items": null
+                        },
+                        "createTime": {
+                          "type": "string",
+                          "required": null,
+                          "title": "创建时间",
+                          "properties": null,
+                          "items": null
+                        },
+                        "updateTime": {
+                          "type": "string",
+                          "required": null,
+                          "title": "修改时间",
+                          "properties": null,
+                          "items": null
+                        }
+                      },
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBom/add": {
+      "post": {
+        "summary": "新增",
+        "tags": [
+          "售价_售价体系bom关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": null,
+                "title": null,
+                "properties": {
+                  "priceSystemId": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价体系id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "priceBillingStandardId": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "加工报价 加工计费标准id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBom/edit": {
+      "post": {
+        "summary": "编辑",
+        "tags": [
+          "售价_售价体系bom关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": null,
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系bom关联id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "priceSystemId": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价体系id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "priceBillingStandardId": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "加工报价 加工计费标准id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBom/delete": {
+      "post": {
+        "summary": "删除",
+        "tags": [
+          "售价_售价体系bom关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "id"
+                ],
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系bom关联id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}

+ 564 - 0
sd-business/src/main/java/com/sd/business/a-json/PriceSystemBomSpecApi.json

@@ -0,0 +1,564 @@
+{
+  "openapi": "3.0.1",
+  "tags": [
+    {
+      "name": "售价_售价体系bom规格关联"
+    }
+  ],
+  "paths": {
+    "/priceSystemBomSpec/page": {
+      "post": {
+        "summary": "分页",
+        "tags": [
+          "售价_售价体系bom规格关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "pageNum",
+                  "pageSize"
+                ],
+                "title": null,
+                "properties": {
+                  "pageNum": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "页数",
+                    "properties": null,
+                    "items": null
+                  },
+                  "pageSize": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "每页大小",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": "object",
+                      "required": [
+                        "rows",
+                        "total"
+                      ],
+                      "title": null,
+                      "properties": {
+                        "rows": {
+                          "type": "array",
+                          "required": null,
+                          "title": "分页数据",
+                          "properties": null,
+                          "items": {
+                            "type": "object",
+                            "required": null,
+                            "title": null,
+                            "properties": {
+                              "id": {
+                                "type": "integer",
+                                "required": null,
+                                "title": "售价_售价体系bom规格关联id",
+                                "properties": null,
+                                "items": null
+                              },
+                              "bomSpecId": {
+                                "type": "integer",
+                                "required": null,
+                                "title": "bom规格id",
+                                "properties": null,
+                                "items": null
+                              },
+                              "internalSellingPrice": {
+                                "type": "number",
+                                "required": null,
+                                "title": "对内销售价(含税)",
+                                "properties": null,
+                                "items": null
+                              },
+                              "externalSellingPrice": {
+                                "type": "number",
+                                "required": null,
+                                "title": "对外销售价(含税)",
+                                "properties": null,
+                                "items": null
+                              },
+                              "createTime": {
+                                "type": "string",
+                                "required": null,
+                                "title": "创建时间",
+                                "properties": null,
+                                "items": null
+                              },
+                              "updateTime": {
+                                "type": "string",
+                                "required": null,
+                                "title": "修改时间",
+                                "properties": null,
+                                "items": null
+                              }
+                            },
+                            "items": null
+                          }
+                        },
+                        "total": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "总条数",
+                          "properties": null,
+                          "items": null
+                        }
+                      },
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBomSpec/detail": {
+      "post": {
+        "summary": "明细",
+        "tags": [
+          "售价_售价体系bom规格关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "id"
+                ],
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系bom规格关联id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": "object",
+                      "required": null,
+                      "title": null,
+                      "properties": {
+                        "id": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "售价_售价体系bom规格关联id",
+                          "properties": null,
+                          "items": null
+                        },
+                        "bomSpecId": {
+                          "type": "integer",
+                          "required": null,
+                          "title": "bom规格id",
+                          "properties": null,
+                          "items": null
+                        },
+                        "internalSellingPrice": {
+                          "type": "number",
+                          "required": null,
+                          "title": "对内销售价(含税)",
+                          "properties": null,
+                          "items": null
+                        },
+                        "externalSellingPrice": {
+                          "type": "number",
+                          "required": null,
+                          "title": "对外销售价(含税)",
+                          "properties": null,
+                          "items": null
+                        },
+                        "createTime": {
+                          "type": "string",
+                          "required": null,
+                          "title": "创建时间",
+                          "properties": null,
+                          "items": null
+                        },
+                        "updateTime": {
+                          "type": "string",
+                          "required": null,
+                          "title": "修改时间",
+                          "properties": null,
+                          "items": null
+                        }
+                      },
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBomSpec/add": {
+      "post": {
+        "summary": "新增",
+        "tags": [
+          "售价_售价体系bom规格关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": null,
+                "title": null,
+                "properties": {
+                  "bomSpecId": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "bom规格id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "internalSellingPrice": {
+                    "type": "number",
+                    "required": null,
+                    "title": "对内销售价(含税)",
+                    "properties": null,
+                    "items": null
+                  },
+                  "externalSellingPrice": {
+                    "type": "number",
+                    "required": null,
+                    "title": "对外销售价(含税)",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBomSpec/edit": {
+      "post": {
+        "summary": "编辑",
+        "tags": [
+          "售价_售价体系bom规格关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": null,
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系bom规格关联id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "bomSpecId": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "bom规格id",
+                    "properties": null,
+                    "items": null
+                  },
+                  "internalSellingPrice": {
+                    "type": "number",
+                    "required": null,
+                    "title": "对内销售价(含税)",
+                    "properties": null,
+                    "items": null
+                  },
+                  "externalSellingPrice": {
+                    "type": "number",
+                    "required": null,
+                    "title": "对外销售价(含税)",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    },
+    "/priceSystemBomSpec/delete": {
+      "post": {
+        "summary": "删除",
+        "tags": [
+          "售价_售价体系bom规格关联"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "type": "object",
+                "required": [
+                  "id"
+                ],
+                "title": null,
+                "properties": {
+                  "id": {
+                    "type": "integer",
+                    "required": null,
+                    "title": "售价_售价体系bom规格关联id",
+                    "properties": null,
+                    "items": null
+                  }
+                },
+                "items": null
+              }
+            }
+          }
+        },
+        "responses": {
+          "200": {
+            "description": "成功",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "type": "object",
+                  "required": [
+                    "code",
+                    "success",
+                    "msg",
+                    "data"
+                  ],
+                  "title": null,
+                  "properties": {
+                    "code": {
+                      "type": "Integer",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "success": {
+                      "type": "boolean",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "msg": {
+                      "type": "string",
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    },
+                    "data": {
+                      "type": null,
+                      "required": null,
+                      "title": null,
+                      "properties": null,
+                      "items": null
+                    }
+                  },
+                  "items": null
+                }
+              }
+            }
+          }
+        }
+      }
+    }
+  }
+}

+ 11 - 0
sd-business/src/main/java/com/sd/business/controller/price/PriceBillingStandardController.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.sd.business.entity.price.dto.PriceBillingStandardDto;
 import com.sd.business.entity.price.dto.PriceBillingStandardSelectDto;
+import com.sd.business.entity.price.po.PriceBillingStandard;
 import com.sd.business.entity.price.vo.PriceBillingStandardVo;
 import com.sd.business.service.price.PriceBillingStandardService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -13,6 +14,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.List;
+
 
 /**
  * <p>
@@ -30,6 +33,14 @@ public class PriceBillingStandardController {
     private PriceBillingStandardService priceBillingStandardService;
 
     /**
+     * 加工计费标准列表
+     */
+    @PostMapping("/list")
+    public List<PriceBillingStandard> list() {
+        return priceBillingStandardService.list();
+    }
+
+    /**
      * 加工计费标准分页
      */
     @PostMapping("/page")

+ 36 - 0
sd-business/src/main/java/com/sd/business/controller/price/PriceSystemBomController.java

@@ -0,0 +1,36 @@
+package com.sd.business.controller.price;
+
+import com.sd.business.entity.price.dto.PriceSystemBomDto;
+import com.sd.business.service.price.PriceSystemBomService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom关联 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@RestController
+@RequestMapping("/priceSystemBom")
+public class PriceSystemBomController {
+
+    @Autowired
+    private PriceSystemBomService priceSystemBomService;
+
+    /**
+     * 售价_售价体系bom关联
+     */
+    @PostMapping("/saveOrEdit")
+    public void edit(@Validated @RequestBody PriceSystemBomDto priceSystemBomDto) {
+        priceSystemBomService.edit(priceSystemBomDto);
+    }
+
+}

+ 36 - 0
sd-business/src/main/java/com/sd/business/controller/price/PriceSystemBomSpecController.java

@@ -0,0 +1,36 @@
+package com.sd.business.controller.price;
+
+import com.sd.business.entity.price.dto.PriceSystemBomSpecDto;
+import com.sd.business.service.price.PriceSystemBomSpecService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom规格关联 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@RestController
+@RequestMapping("/priceSystemBomSpec")
+public class PriceSystemBomSpecController {
+
+    @Autowired
+    private PriceSystemBomSpecService priceSystemBomSpecService;
+
+    /**
+     * 售价_售价体系bom规格关联
+     */
+    @PostMapping("/saveOrEdit")
+    public void edit(@Validated @RequestBody PriceSystemBomSpecDto priceSystemBomSpecDto) {
+        priceSystemBomSpecService.edit(priceSystemBomSpecDto);
+    }
+
+}

+ 81 - 0
sd-business/src/main/java/com/sd/business/controller/price/PriceSystemController.java

@@ -0,0 +1,81 @@
+package com.sd.business.controller.price;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.sd.business.entity.bom.dto.BomSelectDto;
+import com.sd.business.entity.bom.vo.BomVo;
+import com.sd.business.entity.price.dto.PriceSystemDto;
+import com.sd.business.entity.price.dto.PriceSystemSelectDto;
+import com.sd.business.entity.price.vo.PriceSystemVo;
+import com.sd.business.service.price.PriceSystemService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 售价_售价体系 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@RestController
+@RequestMapping("/priceSystem")
+public class PriceSystemController {
+
+    @Autowired
+    private PriceSystemService priceSystemService;
+
+    /**
+     * 售价_售价体系分页
+     */
+    @PostMapping("/page")
+    public Page<PriceSystemVo> page(@RequestBody PriceSystemSelectDto dto) {
+        return priceSystemService.getPage(dto);
+    }
+
+    /**
+     * 售价_售价体系明细
+     */
+    @PostMapping("/detail")
+    public PriceSystemVo detail(@RequestBody BaseSelectDto dto) {
+        return priceSystemService.detail(dto.getId());
+    }
+
+    /**
+     * 售价_售价体系新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody PriceSystemDto priceSystemDto) {
+        priceSystemService.add(priceSystemDto);
+    }
+
+    /**
+     * 售价_售价体系编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody PriceSystemDto priceSystemDto) {
+        priceSystemService.edit(priceSystemDto);
+    }
+
+    /**
+     * 售价_售价体系删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        priceSystemService.delete(dto.getId());
+    }
+
+    /**
+     * 售价配置分页
+     */
+    @PostMapping("/getBomPriceDetail")
+    public Page<BomVo> getBomPriceDetail(@RequestBody BomSelectDto dto) {
+        return priceSystemService.getBomPriceDetail(dto);
+    }
+
+}

+ 5 - 0
sd-business/src/main/java/com/sd/business/entity/bom/dto/BomSelectDto.java

@@ -54,4 +54,9 @@ public class BomSelectDto extends BaseSelectDto {
      */
     private String colour;
 
+    /**
+     * 售价体系id
+     */
+    private Long priceSystemId;
+
 }

+ 5 - 0
sd-business/src/main/java/com/sd/business/entity/bom/vo/BomVo.java

@@ -19,4 +19,9 @@ public class BomVo extends Bom {
 
     private List<BomSpec> bomSpecList;
 
+    /**
+     * 加工计费标准id
+     */
+    private Long priceBillingStandardId;
+
 }

+ 2 - 2
sd-business/src/main/java/com/sd/business/entity/department/po/Department.java

@@ -56,9 +56,9 @@ public class Department extends BasePo {
     private String contactNumber;
 
     /**
-     * 售价体系 字典:department_sellingPriceSystem
+     * 售价体系id
      */
-    private String sellingPriceSystem;
+    private Long priceSystemId;
 
     /**
      * 下单模式 字典:department_orderMode  1自建单+万里牛自动提单 2自建单+万里牛手动提单

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.dto;
+
+import com.sd.business.entity.price.po.PriceSystemBom;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系bom关联新增编辑入参实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemBomDto extends PriceSystemBom {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomSelectDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系bom关联列表查询入参实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemBomSelectDto extends BaseSelectDto {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomSpecDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.dto;
+
+import com.sd.business.entity.price.po.PriceSystemBomSpec;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系bom规格关联新增编辑入参实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemBomSpecDto extends PriceSystemBomSpec {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemBomSpecSelectDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系bom规格关联列表查询入参实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemBomSpecSelectDto extends BaseSelectDto {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.dto;
+
+import com.sd.business.entity.price.po.PriceSystem;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系新增编辑入参实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemDto extends PriceSystem {
+
+}

+ 22 - 0
sd-business/src/main/java/com/sd/business/entity/price/dto/PriceSystemSelectDto.java

@@ -0,0 +1,22 @@
+package com.sd.business.entity.price.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系列表查询入参实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemSelectDto extends BaseSelectDto {
+
+    /**
+     * 售价体系
+     */
+    private String name;
+
+}

+ 31 - 0
sd-business/src/main/java/com/sd/business/entity/price/po/PriceSystem.java

@@ -0,0 +1,31 @@
+package com.sd.business.entity.price.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 售价_售价体系
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+@TableName("price_system")
+public class PriceSystem extends BasePo {
+
+    /**
+     * 售价体系
+     */
+    private String name;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 41 - 0
sd-business/src/main/java/com/sd/business/entity/price/po/PriceSystemBom.java

@@ -0,0 +1,41 @@
+package com.sd.business.entity.price.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * <p>
+ * 售价_售价体系bom关联
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+@TableName("price_system_bom")
+public class PriceSystemBom extends BasePo {
+
+    /**
+     * 售价体系id
+     */
+    @NotNull(message = "售价体系id不能为空")
+    private Long priceSystemId;
+
+    /**
+     * bom id
+     */
+    @NotNull(message = "bom id不能为空")
+    private Long bomId;
+
+    /**
+     * 加工报价 加工计费标准id
+     */
+    @NotNull(message = "加工计费标准id不能为空")
+    private Long priceBillingStandardId;
+
+}

+ 48 - 0
sd-business/src/main/java/com/sd/business/entity/price/po/PriceSystemBomSpec.java

@@ -0,0 +1,48 @@
+package com.sd.business.entity.price.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * 售价_售价体系bom规格关联
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+@TableName("price_system_bom_spec")
+public class PriceSystemBomSpec extends BasePo {
+
+    /**
+     * 售价体系id
+     */
+    @NotNull(message = "售价体系id不能为空")
+    private Long priceSystemId;
+
+    /**
+     * bom规格id
+     */
+    @NotNull(message = "bom规格id不能为空")
+    private Long bomSpecId;
+
+    /**
+     * 对内销售价(含税)
+     */
+    @NotNull(message = "对内销售价不能为空")
+    private BigDecimal internalSellingPrice;
+
+    /**
+     * 对外销售价(含税)
+     */
+    @NotNull(message = "对外销售价不能为空")
+    private BigDecimal externalSellingPrice;
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/vo/PriceSystemBomSpecVo.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.vo;
+
+import com.sd.business.entity.price.po.PriceSystemBomSpec;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系bom规格关联列表查询返回值实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemBomSpecVo extends PriceSystemBomSpec {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/vo/PriceSystemBomVo.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.vo;
+
+import com.sd.business.entity.price.po.PriceSystemBom;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系bom关联列表查询返回值实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemBomVo extends PriceSystemBom {
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/price/vo/PriceSystemVo.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.price.vo;
+
+import com.sd.business.entity.price.po.PriceSystem;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 售价_售价体系列表查询返回值实体
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Getter
+@Setter
+public class PriceSystemVo extends PriceSystem {
+
+}

+ 26 - 0
sd-business/src/main/java/com/sd/business/mapper/price/PriceSystemBomMapper.java

@@ -0,0 +1,26 @@
+package com.sd.business.mapper.price;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.price.po.PriceSystemBom;
+import com.sd.business.entity.price.vo.PriceSystemBomVo;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom关联 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+public interface PriceSystemBomMapper extends BaseMapper<PriceSystemBom> {
+
+    /**
+     * 售价_售价体系bom关联分页
+     */
+    Page<PriceSystemBomVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<PriceSystemBom> wrapper);
+
+}

+ 26 - 0
sd-business/src/main/java/com/sd/business/mapper/price/PriceSystemBomSpecMapper.java

@@ -0,0 +1,26 @@
+package com.sd.business.mapper.price;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.price.po.PriceSystemBomSpec;
+import com.sd.business.entity.price.vo.PriceSystemBomSpecVo;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom规格关联 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+public interface PriceSystemBomSpecMapper extends BaseMapper<PriceSystemBomSpec> {
+
+    /**
+     * 售价_售价体系bom规格关联分页
+     */
+    Page<PriceSystemBomSpecVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<PriceSystemBomSpec> wrapper);
+
+}

+ 26 - 0
sd-business/src/main/java/com/sd/business/mapper/price/PriceSystemMapper.java

@@ -0,0 +1,26 @@
+package com.sd.business.mapper.price;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.price.po.PriceSystem;
+import com.sd.business.entity.price.vo.PriceSystemVo;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 售价_售价体系 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+public interface PriceSystemMapper extends BaseMapper<PriceSystem> {
+
+    /**
+     * 售价_售价体系分页
+     */
+    Page<PriceSystemVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<PriceSystem> wrapper);
+
+}

+ 23 - 0
sd-business/src/main/java/com/sd/business/service/price/PriceSystemBomService.java

@@ -0,0 +1,23 @@
+package com.sd.business.service.price;
+
+import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.price.dto.PriceSystemBomDto;
+import com.sd.business.entity.price.po.PriceSystemBom;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom关联 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+public interface PriceSystemBomService extends BaseService<PriceSystemBom> {
+
+    /**
+     * 售价_售价体系bom关联编辑
+     */
+    void edit(PriceSystemBomDto priceSystemBomDto);
+
+}

+ 23 - 0
sd-business/src/main/java/com/sd/business/service/price/PriceSystemBomSpecService.java

@@ -0,0 +1,23 @@
+package com.sd.business.service.price;
+
+import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.price.dto.PriceSystemBomSpecDto;
+import com.sd.business.entity.price.po.PriceSystemBomSpec;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom规格关联 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+public interface PriceSystemBomSpecService extends BaseService<PriceSystemBomSpec> {
+
+    /**
+     * 售价_售价体系bom规格关联编辑
+     */
+    void edit(PriceSystemBomSpecDto priceSystemBomSpecDto);
+
+}

+ 53 - 0
sd-business/src/main/java/com/sd/business/service/price/PriceSystemService.java

@@ -0,0 +1,53 @@
+package com.sd.business.service.price;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.bom.dto.BomSelectDto;
+import com.sd.business.entity.bom.vo.BomVo;
+import com.sd.business.entity.price.dto.PriceSystemDto;
+import com.sd.business.entity.price.dto.PriceSystemSelectDto;
+import com.sd.business.entity.price.po.PriceSystem;
+import com.sd.business.entity.price.vo.PriceSystemVo;
+
+
+/**
+ * <p>
+ * 售价_售价体系 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+public interface PriceSystemService extends BaseService<PriceSystem> {
+
+    /**
+     * 售价_售价体系分页
+     */
+    Page<PriceSystemVo> getPage(PriceSystemSelectDto dto);
+
+    /**
+     * 售价_售价体系明细
+     */
+    PriceSystemVo detail(Long id);
+
+    /**
+     * 售价_售价体系新增
+     */
+    void add(PriceSystemDto priceSystemDto);
+
+    /**
+     * 售价_售价体系编辑
+     */
+    void edit(PriceSystemDto priceSystemDto);
+
+    /**
+     * 售价_售价体系删除
+     */
+    void delete(Long id);
+
+    /**
+     * 售价配置分页
+     */
+    Page<BomVo> getBomPriceDetail(BomSelectDto dto);
+
+}

+ 4 - 0
sd-business/src/main/java/com/sd/business/service/price/impl/PriceBillingStandardServiceImpl.java

@@ -15,6 +15,7 @@ import com.sd.business.service.price.PriceBillingStandardDetailService;
 import com.sd.business.service.price.PriceBillingStandardService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -59,6 +60,7 @@ public class PriceBillingStandardServiceImpl extends ServiceImpl<PriceBillingSta
         return result;
     }
 
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public void add(PriceBillingStandardDto priceBillingStandardDto) {
         this.save(priceBillingStandardDto);
@@ -68,6 +70,7 @@ public class PriceBillingStandardServiceImpl extends ServiceImpl<PriceBillingSta
         priceBillingStandardDetailService.saveBatch(priceBillingStandardDetailList);
     }
 
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public void edit(PriceBillingStandardDto priceBillingStandardDto) {
         this.updateById(priceBillingStandardDto);
@@ -79,6 +82,7 @@ public class PriceBillingStandardServiceImpl extends ServiceImpl<PriceBillingSta
                 PriceBillingStandardDetail::getPriceBillingStandardId, priceBillingStandardDto.getId());
     }
 
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public void delete(Long id) {
         this.removeById(id);

+ 31 - 0
sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemBomServiceImpl.java

@@ -0,0 +1,31 @@
+package com.sd.business.service.price.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sd.business.entity.price.dto.PriceSystemBomDto;
+import com.sd.business.entity.price.po.PriceSystemBom;
+import com.sd.business.mapper.price.PriceSystemBomMapper;
+import com.sd.business.service.price.PriceSystemBomService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom关联 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Service
+public class PriceSystemBomServiceImpl extends ServiceImpl<PriceSystemBomMapper, PriceSystemBom> implements PriceSystemBomService {
+
+    @Override
+    public synchronized void edit(PriceSystemBomDto priceSystemBomDto) {
+        saveOrUpdate(priceSystemBomDto, Wrappers.<PriceSystemBom>lambdaQuery()
+                .eq(PriceSystemBom::getPriceSystemId, priceSystemBomDto.getPriceSystemId())
+                .eq(PriceSystemBom::getBomId, priceSystemBomDto.getBomId())
+        );
+    }
+
+}

+ 31 - 0
sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemBomSpecServiceImpl.java

@@ -0,0 +1,31 @@
+package com.sd.business.service.price.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sd.business.entity.price.dto.PriceSystemBomSpecDto;
+import com.sd.business.entity.price.po.PriceSystemBomSpec;
+import com.sd.business.mapper.price.PriceSystemBomSpecMapper;
+import com.sd.business.service.price.PriceSystemBomSpecService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 售价_售价体系bom规格关联 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Service
+public class PriceSystemBomSpecServiceImpl extends ServiceImpl<PriceSystemBomSpecMapper, PriceSystemBomSpec> implements PriceSystemBomSpecService {
+
+    @Override
+    public void edit(PriceSystemBomSpecDto priceSystemBomSpecDto) {
+        saveOrUpdate(priceSystemBomSpecDto, Wrappers.<PriceSystemBomSpec>lambdaQuery()
+                .eq(PriceSystemBomSpec::getPriceSystemId, priceSystemBomSpecDto.getPriceSystemId())
+                .eq(PriceSystemBomSpec::getBomSpecId, priceSystemBomSpecDto.getBomSpecId())
+        );
+    }
+
+}

+ 143 - 0
sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemServiceImpl.java

@@ -0,0 +1,143 @@
+package com.sd.business.service.price.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.BaseIdPo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.bom.dto.BomSelectDto;
+import com.sd.business.entity.bom.po.BomSpec;
+import com.sd.business.entity.bom.vo.BomVo;
+import com.sd.business.entity.price.dto.PriceSystemDto;
+import com.sd.business.entity.price.dto.PriceSystemSelectDto;
+import com.sd.business.entity.price.po.PriceSystem;
+import com.sd.business.entity.price.po.PriceSystemBom;
+import com.sd.business.entity.price.po.PriceSystemBomSpec;
+import com.sd.business.entity.price.vo.PriceSystemVo;
+import com.sd.business.mapper.price.PriceSystemMapper;
+import com.sd.business.service.bom.BomService;
+import com.sd.business.service.price.PriceSystemBomService;
+import com.sd.business.service.price.PriceSystemBomSpecService;
+import com.sd.business.service.price.PriceSystemService;
+import com.sd.framework.util.Assert;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+
+/**
+ * <p>
+ * 售价_售价体系 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-12
+ */
+@Service
+public class PriceSystemServiceImpl extends ServiceImpl<PriceSystemMapper, PriceSystem> implements PriceSystemService {
+
+    @Autowired
+    private PriceSystemBomService priceSystemBomService;
+
+    @Autowired
+    private PriceSystemBomSpecService priceSystemBomSpecService;
+
+    @Autowired
+    private BomService bomService;
+
+    @Override
+    public Page<PriceSystemVo> getPage(PriceSystemSelectDto dto) {
+        IWrapper<PriceSystem> wrapper = getWrapper();
+        wrapper.orderByDesc("ps", PriceSystem::getId);
+        wrapper.eq("ps", PriceSystem::getName, dto.getName());
+        Page<PriceSystemVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public PriceSystemVo detail(Long id) {
+        PriceSystem PriceSystem = this.getById(id);
+        PriceSystemVo result = BeanUtil.toBean(PriceSystem, PriceSystemVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(PriceSystemDto priceSystemDto) {
+        this.save(priceSystemDto);
+    }
+
+    @Override
+    public void edit(PriceSystemDto priceSystemDto) {
+        this.updateById(priceSystemDto);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+        priceSystemBomService.remove(q -> q.eq(PriceSystemBom::getPriceSystemId, id));
+        priceSystemBomSpecService.remove(q -> q.eq(PriceSystemBomSpec::getPriceSystemId, id));
+    }
+
+    @Override
+    public Page<BomVo> getBomPriceDetail(BomSelectDto dto) {
+        // 售价体系id
+        Long priceSystemId = dto.getPriceSystemId();
+        Assert.notNull(priceSystemId, "售价体系id不能为空");
+
+        Page<BomVo> page = bomService.getPage(dto);
+        List<BomVo> records = page.getRecords();
+        if (records.size() == 0) {
+            return page;
+        }
+
+        // 赋值bom售价体系
+        List<Long> bomIdList = records.stream().map(BaseIdPo::getId).collect(Collectors.toList());
+        if (bomIdList.size() > 0) {
+            Map<Long, Long> priceSystemBomMap = priceSystemBomService.mapKV(
+                    PriceSystemBom::getBomId,
+                    PriceSystemBom::getPriceBillingStandardId,
+                    q -> q.in(PriceSystemBom::getBomId, bomIdList));
+
+            for (BomVo record : records) {
+                record.setPriceBillingStandardId(priceSystemBomMap.get(record.getId()));
+            }
+        }
+
+        // 赋值bom规格对内售价和对外售价
+        List<Long> bomSpecIdList = records.stream()
+                .filter(item -> ObjectUtil.isNotEmpty(item.getBomSpecList()))
+                .flatMap(item -> item.getBomSpecList().stream())
+                .map(BaseIdPo::getId)
+                .collect(Collectors.toList());
+        if (bomSpecIdList.size() == 0) {
+            return page;
+        }
+        Map<Long, PriceSystemBomSpec> priceSystemBomSpecMap = priceSystemBomSpecService.mapKEntity(
+                PriceSystemBomSpec::getBomSpecId,
+                q -> q.in(PriceSystemBomSpec::getBomSpecId, bomSpecIdList));
+        for (BomVo record : records) {
+            List<BomSpec> bomSpecList = record.getBomSpecList();
+            if (ObjectUtil.isEmpty(bomSpecList)) {
+                continue;
+            }
+            for (BomSpec bomSpec : bomSpecList) {
+                PriceSystemBomSpec priceSystemBomSpec = priceSystemBomSpecMap.get(bomSpec.getId());
+                if (ObjectUtil.isEmpty(priceSystemBomSpec)) {
+                    continue;
+                }
+                bomSpec.setInternalSellingPrice(priceSystemBomSpec.getInternalSellingPrice());
+                bomSpec.setExternalSellingPrice(priceSystemBomSpec.getExternalSellingPrice());
+            }
+        }
+
+        return page;
+    }
+
+
+}

+ 16 - 0
sd-business/src/main/resources/mapper/price/PriceSystemBomMapper.xml

@@ -0,0 +1,16 @@
+<?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="com.sd.business.mapper.price.PriceSystemBomMapper">
+    <select id="getPage" resultType="com.sd.business.entity.price.vo.PriceSystemBomVo">
+        select psb.id,
+               psb.price_system_id,
+               psb.price_billing_standard_id,
+               psb.create_user,
+               psb.create_time,
+               psb.update_user,
+               psb.update_time
+        from price_system_bom psb
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 17 - 0
sd-business/src/main/resources/mapper/price/PriceSystemBomSpecMapper.xml

@@ -0,0 +1,17 @@
+<?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="com.sd.business.mapper.price.PriceSystemBomSpecMapper">
+    <select id="getPage" resultType="com.sd.business.entity.price.vo.PriceSystemBomSpecVo">
+        select psbs.id,
+               psbs.bom_spec_id,
+               psbs.internal_selling_price,
+               psbs.external_selling_price,
+               psbs.create_user,
+               psbs.create_time,
+               psbs.update_user,
+               psbs.update_time
+        from price_system_bom_spec psbs
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 16 - 0
sd-business/src/main/resources/mapper/price/PriceSystemMapper.xml

@@ -0,0 +1,16 @@
+<?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="com.sd.business.mapper.price.PriceSystemMapper">
+    <select id="getPage" resultType="com.sd.business.entity.price.vo.PriceSystemVo">
+        select ps.id,
+               ps.name,
+               ps.remark,
+               ps.create_user,
+               ps.create_time,
+               ps.update_user,
+               ps.update_time
+        from price_system ps
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>