diff --git a/klp-ui/src/api/pltcm/model.js b/klp-ui/src/api/pltcm/model.js
new file mode 100644
index 000000000..bc37ad25f
--- /dev/null
+++ b/klp-ui/src/api/pltcm/model.js
@@ -0,0 +1,154 @@
+import request from '@/utils/request'
+
+// ═══════════════════════════════════════
+// 厚度分类
+// ═══════════════════════════════════════
+export function listThickClass(query) {
+ return request({ url: '/pltcm/thickClass/list', method: 'get', params: query })
+}
+
+export function getThickClass(classId) {
+ return request({ url: '/pltcm/thickClass/' + classId, method: 'get' })
+}
+
+export function addThickClass(data) {
+ return request({ url: '/pltcm/thickClass', method: 'post', data })
+}
+
+export function updateThickClass(data) {
+ return request({ url: '/pltcm/thickClass', method: 'put', data })
+}
+
+export function delThickClass(classIds) {
+ return request({ url: '/pltcm/thickClass/' + classIds, method: 'delete' })
+}
+
+// ═══════════════════════════════════════
+// 宽度分类
+// ═══════════════════════════════════════
+export function listWidthClass(query) {
+ return request({ url: '/pltcm/widthClass/list', method: 'get', params: query })
+}
+
+export function getWidthClass(classId) {
+ return request({ url: '/pltcm/widthClass/' + classId, method: 'get' })
+}
+
+export function addWidthClass(data) {
+ return request({ url: '/pltcm/widthClass', method: 'post', data })
+}
+
+export function updateWidthClass(data) {
+ return request({ url: '/pltcm/widthClass', method: 'put', data })
+}
+
+export function delWidthClass(classIds) {
+ return request({ url: '/pltcm/widthClass/' + classIds, method: 'delete' })
+}
+
+// ═══════════════════════════════════════
+// 屈服强度分类
+// ═══════════════════════════════════════
+export function listYieldStressClass(query) {
+ return request({ url: '/pltcm/yieldStressClass/list', method: 'get', params: query })
+}
+
+export function getYieldStressClass(classId) {
+ return request({ url: '/pltcm/yieldStressClass/' + classId, method: 'get' })
+}
+
+export function addYieldStressClass(data) {
+ return request({ url: '/pltcm/yieldStressClass', method: 'post', data })
+}
+
+export function updateYieldStressClass(data) {
+ return request({ url: '/pltcm/yieldStressClass', method: 'put', data })
+}
+
+export function delYieldStressClass(classIds) {
+ return request({ url: '/pltcm/yieldStressClass/' + classIds, method: 'delete' })
+}
+
+// ═══════════════════════════════════════
+// 策略关联
+// ═══════════════════════════════════════
+export function listStrategy(query) {
+ return request({ url: '/pltcm/strategy/list', method: 'get', params: query })
+}
+
+export function getStrategy(id) {
+ return request({ url: '/pltcm/strategy/' + id, method: 'get' })
+}
+
+export function addStrategy(data) {
+ return request({ url: '/pltcm/strategy', method: 'post', data })
+}
+
+export function updateStrategy(data) {
+ return request({ url: '/pltcm/strategy', method: 'put', data })
+}
+
+export function delStrategy(ids) {
+ return request({ url: '/pltcm/strategy/' + ids, method: 'delete' })
+}
+
+// ═══════════════════════════════════════
+// 屈服强度与钢种对应关系
+// ═══════════════════════════════════════
+export function listSteelgrade(query) {
+ return request({ url: '/pltcm/steelgrade/list', method: 'get', params: query })
+}
+
+export function getSteelgrade(steelGrade) {
+ return request({ url: '/pltcm/steelgrade/' + steelGrade, method: 'get' })
+}
+
+export function addSteelgrade(data) {
+ return request({ url: '/pltcm/steelgrade', method: 'post', data })
+}
+
+export function updateSteelgrade(data) {
+ return request({ url: '/pltcm/steelgrade', method: 'put', data })
+}
+
+export function delSteelgrade(steelGrades) {
+ return request({ url: '/pltcm/steelgrade/' + steelGrades, method: 'delete' })
+}
+
+// ═══════════════════════════════════════
+// 比例标准表
+// ═══════════════════════════════════════
+export function listRatio(query) {
+ return request({ url: '/pltcm/ratio/list', method: 'get', params: query })
+}
+
+export function getRatio(id) {
+ return request({ url: '/pltcm/ratio/' + id, method: 'get' })
+}
+
+export function addRatio(data) {
+ return request({ url: '/pltcm/ratio', method: 'post', data })
+}
+
+export function updateRatio(data) {
+ return request({ url: '/pltcm/ratio', method: 'put', data })
+}
+
+export function delRatio(ids) {
+ return request({ url: '/pltcm/ratio/' + ids, method: 'delete' })
+}
+
+// ═══════════════════════════════════════
+// 设备启用状态
+// ═══════════════════════════════════════
+export function listDeviceEnable(query) {
+ return request({ url: '/pltcm/deviceEnable/list', method: 'get', params: query })
+}
+
+export function getDeviceEnable(id) {
+ return request({ url: '/pltcm/deviceEnable/' + id, method: 'get' })
+}
+
+export function updateDeviceEnable(data) {
+ return request({ url: '/pltcm/deviceEnable', method: 'put', data })
+}
diff --git a/klp-ui/src/views/micro/pages/acid/components/Model.vue b/klp-ui/src/views/micro/pages/acid/components/Model.vue
new file mode 100644
index 000000000..2bada5921
--- /dev/null
+++ b/klp-ui/src/views/micro/pages/acid/components/Model.vue
@@ -0,0 +1,1359 @@
+
+