瀏覽代碼

JLHWEB: 1、床垫报价,点解修改床网报价时,自动读取当前床垫规格;
2、床网报价弹簧排列公式增加四周加硬逻辑
3、床垫报价按钮新增限制,已业务下单的及其副规格,将无法修改及保存

JohnnyChan 2 天之前
父節點
當前提交
28781dd207

+ 1 - 1
JLHWEB/src/api/interface/index.ts

@@ -1302,7 +1302,7 @@ export namespace Mattress {
   }
   export interface ReqRefreshMattressInterface {
     mattressid: number;
-    mattressid_fu: number;
+    mattressid_fu?: number;
     isPz?: number;
     isCheck?: number;
     isEdit?: number;

+ 2 - 2
JLHWEB/src/styles/index.scss

@@ -24,7 +24,7 @@ code {
 
 /* table row status */
 .vxecol-edit {
-  color: var(--lj-color-geek-blue-5);
+  color: var(--lj-color-geek-blue-6);
 }
 .vxecol-disable {
   color: var(--lj-color-gray-6);
@@ -52,7 +52,7 @@ code {
   color: var(--lj-color-calendula-gold-6) !important;
 }
 .vxecol-bg-green {
-  background-color: var(--lj-color-polar-green-1);
+  background-color: var(--lj-color-polar-green-1-8);
 }
 
 .singleton-tooltip {

+ 110 - 110
JLHWEB/src/styles/var/vxe-variable.scss

@@ -7,161 +7,161 @@
 
 :root {
   /*icon*/
-  --vxe-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-icon-background-color: var(--lj-color-gray-1);
 
   /*color*/
-  --vxe-font-color: var(--lj-color-text-title);
-  --vxe-primary-color: var(--lj-color-primary-500);
-  --vxe-success-color: var(--lj-color-polar-green-6);
-  --vxe-info-color: var(--lj-color-gray-7);
-  --vxe-warning-color: var(--lj-color-sunrise-yellow-6);
-  --vxe-danger-color: var(--lj-color-dust-red-6);
+  --vxe-ui-font-color: var(--lj-color-text-title);
+  --vxe-ui-primary-color: var(--lj-color-primary-500);
+  --vxe-ui-success-color: var(--lj-color-polar-green-6);
+  --vxe-ui-info-color: var(--lj-color-gray-7);
+  --vxe-ui-warning-color: var(--lj-color-sunrise-yellow-6);
+  --vxe-ui-danger-color: var(--lj-color-dust-red-6);
 
-  --vxe-font-disabled-color: var(--lj-color-text-disable);
+  --vxe-ui-font-disabled-color: var(--lj-color-text-disable);
 
   /*input/radio/checkbox*/
-  --vxe-input-border-color: var(--lj-color-gray-4);
-  --vxe-input-disabled-color: var(--lj-color-gray-4);
-  --vxe-input-disabled-background-color: var(--lj-color-gray-4);
-  --vxe-input-placeholder-color: var(--lj-color-gray-6);
+  --vxe-ui-input-border-color: var(--lj-color-gray-4);
+  --vxe-ui-input-disabled-color: var(--lj-color-gray-4);
+  --vxe-ui-input-disabled-background-color: var(--lj-color-gray-4);
+  --vxe-ui-input-placeholder-color: var(--lj-color-gray-6);
 
   /*popup*/
-  --vxe-table-popup-border-color: var(--lj-color-gray-5);
+  --vxe-ui-table-popup-border-color: var(--lj-color-gray-5);
 
   /*table*/
-  --vxe-table-header-font-color: var(--lj-color-text-secondary-text);
-  --vxe-table-footer-font-color: var(--lj-color-text-title);
-  --vxe-table-border-color: var(--lj-color-gray-4);
-  --vxe-table-resizable-line-color: var(--lj-color-primary-300);
-  --vxe-table-header-background-color: var(--lj-color-gray-2);
-  --vxe-table-body-background-color: var(--el-bg-color);
-  --vxe-table-footer-background-color: var(--el-bg-color);
-  --vxe-table-tree-node-line-color: var(--lj-color-gray-7);
-
-  --vxe-table-row-hover-background-color: var(--lj-color-gray-3);
-  --vxe-table-row-striped-background-color: var(--lj-color-gray-2);
-  --vxe-table-row-hover-striped-background-color: var(--lj-color-gray-3);
-  --vxe-table-row-radio-checked-background-color: var(--lj-color-primary-000);
-  --vxe-table-row-hover-radio-checked-background-color: var(--lj-color-primary-100);
-  --vxe-table-row-checkbox-checked-background-color: var(--lj-color-primary-000);
-  --vxe-table-row-hover-checkbox-checked-background-color: var(--lj-color-primary-100);
-  --vxe-table-row-current-background-color: var(--lj-color-primary-200);
-  --vxe-table-row-hover-current-background-color: var(--lj-color-primary-300);
-
-  --vxe-table-column-hover-background-color: var(--lj-color-primary-100);
-  --vxe-table-column-current-background-color: var(--lj-color-primary-000);
-  --vxe-table-column-icon-border-color: var(--lj-color-gray-6);
-  --vxe-table-column-icon-border-hover-color: var(--lj-color-gray-8);
-
-  --vxe-table-cell-placeholder-color: var(--lj-color-gray-6);
-  --vxe-table-cell-dirty-update-color: var(--lj-color-dust-red-5);
-  --vxe-table-cell-dirty-insert-color: var(--lj-color-polar-green-6);
-  --vxe-table-cell-main-area-extension-border-color: var(--lj-color-gray-1);
-  --vxe-table-cell-area-background-color: rgba(64, 158, 255, 0.2);
-  --vxe-table-cell-area-border-color: var(--lj-color-primary-500);
-
-  --vxe-table-checkbox-range-border-color: var(--lj-color-primary-500);
-  --vxe-table-checkbox-range-background-color: rgba(50, 128, 252, 0.2);
-
-  --vxe-table-fixed-left-scrolling-box-shadow: 8px 0px 10px -5px var(--lj-color-text-border);
-  --vxe-table-fixed-right-scrolling-box-shadow: -8px 0px 10px -5px var(--lj-color-text-border);
+  --vxe-ui-table-header-font-color: var(--lj-color-text-secondary-text);
+  --vxe-ui-table-footer-font-color: var(--lj-color-text-title);
+  --vxe-ui-table-border-color: var(--lj-color-gray-4);
+  --vxe-ui-table-resizable-line-color: var(--lj-color-primary-300);
+  --vxe-ui-table-header-background-color: var(--lj-color-gray-2);
+  --vxe-ui-table-body-background-color: var(--el-bg-color);
+  --vxe-ui-table-footer-background-color: var(--el-bg-color);
+  --vxe-ui-table-tree-node-line-color: var(--lj-color-gray-7);
+
+  --vxe-ui-table-row-hover-background-color: var(--lj-color-gray-3);
+  --vxe-ui-table-row-striped-background-color: var(--lj-color-gray-2);
+  --vxe-ui-table-row-hover-striped-background-color: var(--lj-color-gray-3);
+  --vxe-ui-table-row-radio-checked-background-color: var(--lj-color-primary-000);
+  --vxe-ui-table-row-hover-radio-checked-background-color: var(--lj-color-primary-100);
+  --vxe-ui-table-row-checkbox-checked-background-color: var(--lj-color-primary-000);
+  --vxe-ui-table-row-hover-checkbox-checked-background-color: var(--lj-color-primary-100);
+  --vxe-ui-table-row-current-background-color: var(--lj-color-primary-200);
+  --vxe-ui-table-row-hover-current-background-color: var(--lj-color-primary-300);
+
+  --vxe-ui-table-column-hover-background-color: var(--lj-color-primary-100);
+  --vxe-ui-table-column-current-background-color: var(--lj-color-primary-000);
+  --vxe-ui-table-column-icon-border-color: var(--lj-color-gray-6);
+  --vxe-ui-table-column-icon-border-hover-color: var(--lj-color-gray-8);
+
+  --vxe-ui-table-cell-placeholder-color: var(--lj-color-gray-6);
+  --vxe-ui-table-cell-dirty-update-color: var(--lj-color-dust-red-5);
+  --vxe-ui-table-cell-dirty-insert-color: var(--lj-color-polar-green-6);
+  --vxe-ui-table-cell-main-area-extension-border-color: var(--lj-color-gray-1);
+  --vxe-ui-table-cell-area-background-color: rgba(64, 158, 255, 0.2);
+  --vxe-ui-table-cell-area-border-color: var(--lj-color-primary-500);
+
+  --vxe-ui-table-checkbox-range-border-color: var(--lj-color-primary-500);
+  --vxe-ui-table-checkbox-range-background-color: rgba(50, 128, 252, 0.2);
+
+  --vxe-ui-table-fixed-left-scrolling-box-shadow: 8px 0px 10px -5px var(--lj-color-text-border);
+  --vxe-ui-table-fixed-right-scrolling-box-shadow: -8px 0px 10px -5px var(--lj-color-text-border);
 
   /*filter*/
-  --vxe-table-filter-panel-background-color: var(--lj-color-gray-1);
+  --vxe-ui-table-filter-panel-background-color: var(--lj-color-gray-1);
 
   /*menu*/
-  --vxe-table-menu-background-color: var(--lj-color-gray-1);
+  --vxe-ui-table-menu-background-color: var(--lj-color-gray-1);
 
   /*loading*/
-  --vxe-loading-color: var(--lj-color-primary-500);
-  --vxe-loading-background-color: lighten(--lj-color-gray-1, 50%);
+  --vxe-ui-loading-color: var(--lj-color-primary-500);
+  --vxe-ui-loading-background-color: lighten(--lj-color-gray-1, 50%);
 
   /*validate*/
-  --vxe-table-validate-error-color: var(--lj-color-dust-red-4);
+  --vxe-ui-table-validate-error-color: var(--lj-color-dust-red-4);
 
   /*grid*/
-  --vxe-grid-maximize-background-color: var(--lj-color-gray-1);
+  --vxe-ui-grid-maximize-background-color: var(--lj-color-gray-1);
 
   /*toolbar*/
-  --vxe-toolbar-background-color: var(--lj-color-gray-1);
-  --vxe-toolbar-custom-active-background-color: var(--lj-color-gray-5);
-  --vxe-toolbar-panel-background-color: var(--lj-color-gray-1);
+  --vxe-ui-toolbar-background-color: var(--lj-color-gray-1);
+  --vxe-ui-toolbar-custom-active-background-color: var(--lj-color-gray-5);
+  --vxe-ui-toolbar-panel-background-color: var(--lj-color-gray-1);
 
   /*tooltip*/
-  --vxe-tooltip-dark-color: var(--lj-color-gray-1);
-  --vxe-tooltip-dark-background-color: var(--lj-color-gray-10);
-  --vxe-tooltip-light-background-color: var(--lj-color-gray-1);
-  --vxe-tooltip-validate-error-color: var(--lj-color-gray-1);
-  --vxe-tooltip-validate-error-background-color: var(--lj-color-dust-red-5);
+  --vxe-ui-tooltip-dark-color: var(--lj-color-gray-1);
+  --vxe-ui-tooltip-dark-background-color: var(--lj-color-gray-10);
+  --vxe-ui-tooltip-light-background-color: var(--lj-color-gray-1);
+  --vxe-ui-tooltip-validate-error-color: var(--lj-color-gray-1);
+  --vxe-ui-tooltip-validate-error-background-color: var(--lj-color-dust-red-5);
 
   /*pager*/
-  --vxe-pager-background-color: var(--el-bg-color);
-  --vxe-pager-perfect-background-color: var(--lj-color-gray-1);
-  --vxe-pager-perfect-button-background-color: var(--lj-color-gray-3);
+  --vxe-ui-pager-background-color: var(--el-bg-color);
+  --vxe-ui-pager-perfect-background-color: var(--lj-color-gray-1);
+  --vxe-ui-pager-perfect-button-background-color: var(--lj-color-gray-3);
 
   /*modal*/
-  --vxe-modal-header-background-color: var(--lj-color-gray-2);
-  --vxe-modal-body-background-color: var(--lj-color-gray-1);
-  --vxe-modal-border-color: var(--lj-color-gray-4);
+  --vxe-ui-modal-header-background-color: var(--lj-color-gray-2);
+  --vxe-ui-modal-body-background-color: var(--lj-color-gray-1);
+  --vxe-ui-modal-border-color: var(--lj-color-gray-4);
 
   /*checkbox*/
-  --vxe-checkbox-icon-background-color: var(--lj-color-gray-1);
-  --vxe-checkbox-checked-icon-border-color: var(--lj-color-gray-1);
-  --vxe-checkbox-indeterminate-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-checkbox-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-checkbox-checked-icon-border-color: var(--lj-color-gray-1);
+  --vxe-ui-checkbox-indeterminate-icon-background-color: var(--lj-color-gray-1);
 
   /*radio*/
-  --vxe-radio-icon-background-color: var(--lj-color-gray-1);
-  --vxe-radio-checked-icon-background-color: var(--lj-color-gray-1);
-  --vxe-radio-indeterminate-icon-background-color: var(--lj-color-gray-1);
-  --vxe-radio-button-default-background-color: var(--lj-color-gray-1);
+  --vxe-ui-radio-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-radio-checked-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-radio-indeterminate-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-radio-button-default-background-color: var(--lj-color-gray-1);
 
   /*button*/
-  --vxe-button-default-background-color: var(--lj-color-gray-1);
-  --vxe-button-dropdown-panel-background-color: var(--lj-color-gray-1);
+  --vxe-ui-button-default-background-color: var(--lj-color-gray-1);
+  --vxe-ui-button-dropdown-panel-background-color: var(--lj-color-gray-1);
 
   /*input*/
-  --vxe-input-background-color: var(--lj-color-gray-1);
-  --vxe-input-panel-background-color: var(--lj-color-gray-1);
-  --vxe-input-number-disabled-color: var(--lj-color-gray-4);
-  --vxe-input-date-festival-color: var(--lj-color-gray-7);
-  --vxe-input-date-festival-important-color: var(--lj-color-primary-500);
-  --vxe-input-date-notice-background-color: var(--lj-color-dust-red-6);
-  --vxe-input-date-picker-hover-background-color: var(--lj-color-gray-2);
-  --vxe-input-date-picker-selected-color: var(--lj-color-gray-1);
-  --vxe-input-date-time-confirm-button-color: var(--lj-color-gray-1);
-  --vxe-input-date-extra-color: var(--lj-color-polar-green-6);
-  --vxe-input-date-extra-important-color: var(--lj-color-dust-red-6);
-  --vxe-input-date-picker-festival-selected-color: var(--lj-color-gray-1);
-  --vxe-input-date-picker-notice-selected-background-color: var(--lj-color-gray-1);
+  --vxe-ui-input-background-color: var(--lj-color-gray-1);
+  --vxe-ui-input-panel-background-color: var(--lj-color-gray-1);
+  --vxe-ui-input-number-disabled-color: var(--lj-color-gray-4);
+  --vxe-ui-input-date-festival-color: var(--lj-color-gray-7);
+  --vxe-ui-input-date-festival-important-color: var(--lj-color-primary-500);
+  --vxe-ui-input-date-notice-background-color: var(--lj-color-dust-red-6);
+  --vxe-ui-input-date-picker-hover-background-color: var(--lj-color-gray-2);
+  --vxe-ui-input-date-picker-selected-color: var(--lj-color-gray-1);
+  --vxe-ui-input-date-time-confirm-button-color: var(--lj-color-gray-1);
+  --vxe-ui-input-date-extra-color: var(--lj-color-polar-green-6);
+  --vxe-ui-input-date-extra-important-color: var(--lj-color-dust-red-6);
+  --vxe-ui-input-date-picker-festival-selected-color: var(--lj-color-gray-1);
+  --vxe-ui-input-date-picker-notice-selected-background-color: var(--lj-color-gray-1);
 
   /*textarea*/
-  --vxe-textarea-background-color: var(--lj-color-gray-1);
-  --vxe-textarea-count-color: var(--lj-color-gray-7);
-  --vxe-textarea-count-background-color: var(--lj-color-gray-1);
-  --vxe-textarea-count-error-color: var(--lj-color-dust-red-4);
+  --vxe-ui-textarea-background-color: var(--lj-color-gray-1);
+  --vxe-ui-textarea-count-color: var(--lj-color-gray-7);
+  --vxe-ui-textarea-count-background-color: var(--lj-color-gray-1);
+  --vxe-ui-textarea-count-error-color: var(--lj-color-dust-red-4);
 
   /*form*/
-  --vxe-form-background-color: var(--lj-color-gray-1);
-  --vxe-form-validate-error-color: var(--lj-color-dust-red-4);
+  --vxe-ui-form-background-color: var(--lj-color-gray-1);
+  --vxe-ui-form-validate-error-color: var(--lj-color-dust-red-4);
 
   /*select*/
-  --vxe-select-option-hover-background-color: var(--lj-color-gray-3);
-  --vxe-select-panel-background-color: var(--lj-color-gray-1);
-  --vxe-select-empty-color: var(--lj-color-gray-6);
-  --vxe-optgroup-title-color: var(--lj-color-gray-7);
+  --vxe-ui-select-option-hover-background-color: var(--lj-color-gray-3);
+  --vxe-ui-select-panel-background-color: var(--lj-color-gray-1);
+  --vxe-ui-select-empty-color: var(--lj-color-gray-6);
+  --vxe-ui-optgroup-title-color: var(--lj-color-gray-7);
 
   /*switch*/
-  --vxe-switch-font-color: var(--lj-color-gray-1);
-  --vxe-switch-icon-background-color: var(--lj-color-gray-1);
-  --vxe-switch-close-background-color: var(--lj-color-text-disable);
-  --vxe-switch-disabled-background-color: var(--lj-color-text-border);
+  --vxe-ui-switch-font-color: var(--lj-color-gray-1);
+  --vxe-ui-switch-icon-background-color: var(--lj-color-gray-1);
+  --vxe-ui-switch-close-background-color: var(--lj-color-text-disable);
+  --vxe-ui-switch-disabled-background-color: var(--lj-color-text-border);
 
   /*pulldown*/
-  --vxe-pulldown-panel-background-color: var(--lj-color-gray-1);
+  --vxe-ui-pulldown-panel-background-color: var(--lj-color-gray-1);
 
-  --vxe-primary-lighten-color: var(--lj-color-primary-400);
+  --vxe-ui-primary-lighten-color: var(--lj-color-primary-400);
 
-  --vxe-ui-table-row-line-height: 12px;
-  // --vxe-ui-table-column-padding-mini: 3px;
-  // --vxe-ui-table-row-height-mini: 28px;
+  --vxe-ui-ui-table-row-line-height: 12px;
+  // --vxe-ui-ui-table-column-padding-mini: 3px;
+  // --vxe-ui-ui-table-row-height-mini: 28px;
 }

+ 58 - 88
JLHWEB/src/views/erpapi/mattressInterface/detail.vue

@@ -854,50 +854,20 @@ const orderDefaultAction = [
   }),
   // ],
   // [
-  buttonDefault({
-    label: "增行",
-    limited: () => {
-      return !orderStatus.value;
-    },
-    clickFunc: item => {}
-  }),
-  buttonDefault({
-    label: "插行",
-    limited: () => {
-      return !orderStatus.value;
-    },
-    clickFunc: item => {},
-    divider: true
-  }),
-  buttonDefault({
-    label: "上移",
-    limited: () => {
-      return !orderStatus.value;
-    },
-    clickFunc: item => {}
-  }),
-  buttonDefault({
-    label: "下移",
-    limited: () => {
-      return !orderStatus.value;
-    },
-    clickFunc: item => {},
-    divider: true
-  }),
-  buttonDefault({
-    label: "清单增加默认项目",
-    limited: () => {
-      return !orderStatus.value;
-    },
-    clickFunc: () => funcAddRowQd()
-  }),
-  buttonDefault({
-    label: "辅助计算生产尺寸",
-    limited: () => {
-      return !orderStatus.value;
-    },
-    clickFunc: () => funcCmpCC()
-  }),
+  // buttonDefault({
+  //   label: "清单增加默认项目",
+  //   limited: () => {
+  //     return !orderStatus.value;
+  //   },
+  //   clickFunc: () => funcAddRowQd()
+  // }),
+  // buttonDefault({
+  //   label: "辅助计算生产尺寸",
+  //   limited: () => {
+  //     return !orderStatus.value;
+  //   },
+  //   clickFunc: () => funcCmpCC()
+  // }),
   // ],
   buttonDefault({
     label: "重置半成品归属列数据",
@@ -977,7 +947,7 @@ const orderDefaultAction = [
     label: "产品补充",
     power: 82,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     disabledTextCallBack: (data: any) => {
       if (data.js1_flag == 1) {
@@ -993,7 +963,7 @@ const orderDefaultAction = [
     label: "产品补充审核",
     power: 83,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     clickFunc: item => {
       const curRecords = [LjDetailRef.value?._mainData];
@@ -1007,7 +977,7 @@ const orderDefaultAction = [
     label: "产品补充撤审",
     power: 84,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     clickFunc: item => {
       const curRecords = [LjDetailRef.value?._mainData];
@@ -1023,7 +993,7 @@ const orderDefaultAction = [
     label: "清单补充",
     power: 85,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     disabledTextCallBack: (data: any) => {
       if (data.js2_flag == 1) {
@@ -1039,7 +1009,7 @@ const orderDefaultAction = [
     label: "清单补充审核",
     power: 86,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     clickFunc: item => {
       const curRecords = [LjDetailRef.value?._mainData];
@@ -1053,7 +1023,7 @@ const orderDefaultAction = [
     label: "清单补充撤审",
     power: 87,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     clickFunc: item => {
       const curRecords = [LjDetailRef.value?._mainData];
@@ -1120,50 +1090,50 @@ const orderDefaultAction = [
     power: 88,
     loading: () => loadingStatus.value.mtrldef,
     limited: () => {
-      return !!orderStatus.value;
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
     },
     clickFunc: item => {
       toCreateMtrl(1, [LjDetailRef.value?._mainData.mattressid]);
     }
   }),
-  [
-    buttonDefault({
-      label: "生成金蝶清单",
-      power: 90,
-      loading: () => loadingStatus.value.prdpf,
-      disabledTextCallBack: (data: any) => {
-        console.log("生成金蝶清单 disabledTextCallBack data", data);
-        if (data.js2_flag == 0) {
-          return "床垫清单未审核,无法生成金蝶清单";
-        }
-
-        return "";
-      },
-      limited: () => {
-        return !!orderStatus.value;
-      },
-      clickFunc: item => {
-        toCreateORDelMtrlPf(1, [LjDetailRef.value?._mainData.mattressid]);
+  // [
+  buttonDefault({
+    label: "生成金蝶清单",
+    power: 90,
+    loading: () => loadingStatus.value.prdpf,
+    limited: () => {
+      return !!orderStatus.value || LjDetailRef.value?._mainData.yw_flag == 0;
+    },
+    disabledTextCallBack: (data: any) => {
+      console.log("生成金蝶清单 disabledTextCallBack data", data);
+      if (data.js2_flag == 0) {
+        return "床垫清单未审核,无法生成金蝶清单";
       }
-    })
-    // buttonDefault({
-    //   label: "删除金蝶清单",
-    //   power: 91,
-    //   clickFunc: item => {
-    //     toCreateORDelMtrlPf(0, LjDetailRef.value?._mainData.mattressid);
-    //   }
-    // })
-    // buttonDefault({
-    //   label: "更新计划价",
-    //   power: 91,
-    //   limited: () => {
-    //     return !!orderStatus.value;
-    //   },
-    //   clickFunc: item => {
-    //     toUpdateL1Planprice(LjDetailRef.value?._mainData.mattressid);
-    //   }
-    // })
-  ],
+
+      return "";
+    },
+    clickFunc: item => {
+      toCreateORDelMtrlPf(1, [LjDetailRef.value?._mainData.mattressid]);
+    }
+  }),
+  // buttonDefault({
+  //   label: "删除金蝶清单",
+  //   power: 91,
+  //   clickFunc: item => {
+  //     toCreateORDelMtrlPf(0, LjDetailRef.value?._mainData.mattressid);
+  //   }
+  // })
+  // buttonDefault({
+  //   label: "更新计划价",
+  //   power: 91,
+  //   limited: () => {
+  //     return !!orderStatus.value;
+  //   },
+  //   clickFunc: item => {
+  //     toUpdateL1Planprice(LjDetailRef.value?._mainData.mattressid);
+  //   }
+  // })
+  // ],
   buttonDefault({
     label: "同步L1资料",
     // limited: () => {

+ 18 - 0
JLHWEB/src/views/erpapi/mattressInterface/hooks/index.tsx

@@ -1716,6 +1716,14 @@ export const useHooks = (t?: any) => {
   //   },
   // ];
 
+  const rowClsNameFunc = (data: any) => {
+    const { row, rowIndex, $rowIndex } = data;
+    if (Number(row.haschange) == 1) {
+      return "vxecol-bg-green";
+    }
+    return "";
+  };
+
   const tableProps_mx = ref<any>({
     height: "auto",
     align: "left",
@@ -1723,6 +1731,7 @@ export const useHooks = (t?: any) => {
     sortConfig: {
       trigger: "manual"
     },
+    rowClassName: rowClsNameFunc,
     editConfig: {
       trigger: "click",
       mode: "cell",
@@ -1912,6 +1921,9 @@ export const useHooks = (t?: any) => {
               mx[prop] = mx2[prop];
             });
           }
+          mx.haschange = 1;
+        } else {
+          mx.haschange = 0;
         }
         return mx;
       });
@@ -1927,6 +1939,9 @@ export const useHooks = (t?: any) => {
           NEED_PROPS.forEach(prop => {
             mx[prop] = copyMap.get(key)[prop];
           });
+          mx.haschange = 1;
+        } else {
+          mx.haschange = 0;
         }
         return mx;
       });
@@ -1942,6 +1957,9 @@ export const useHooks = (t?: any) => {
           SPECIAL_PRESERVED_PROPS.forEach(prop => {
             mx[prop] = copyMap.get(key)[prop];
           });
+          mx.haschange = 1;
+        } else {
+          mx.haschange = 0;
         }
         return mx;
       });

+ 28 - 3
JLHWEB/src/views/quote/bednetQuote/detail.vue

@@ -197,7 +197,8 @@ const {
   wf_cmp_cb,
   setMxSpringLength,
   gotoSummy,
-  handelChangeDuoqv
+  handelChangeDuoqv,
+  setMxSpringQtyWidthAndLength
 } = useHooks(t, props);
 
 const { CheckPower, CheckOption, buttonNew, buttonDefault } = useAuthButtons(t);
@@ -765,15 +766,39 @@ const funcAfterMound = async (data: any) => {
 
   if (orderStatus.value != "new") {
     console.log("reload_dw2 data :>> ", data);
-    await reload_dw2(data, (params: any) => {
+    await reload_dw2(data, async (params: any) => {
       const { mx, spring } = params;
       console.log("reload_dw2 22result :>> ", params);
       bednetMxData.value = mx.list;
       bednetMxSpringData.value = spring.list;
 
+      await nextTick();
+      const $tableMx = vxeTableMxRef.value.element;
+      const $tableSpring = vxeTableMxRef.value.element;
+
+      $tableMx.loadData(bednetMxData.value);
+      $tableSpring.loadData(bednetMxSpringData.value);
       const { enumMap } = LjDetailRef.value;
 
-      orderStatus.value == "edit" && handelChangeDuoqv(data.duo_qv_str, enumMap.get("duo_qv_str"), false);
+      if (orderStatus.value == "edit") {
+        handelChangeDuoqv(data.duo_qv_str, enumMap.get("duo_qv_str"), false);
+
+        if (props.mattressLength || props.mattressWidth) {
+          let msgArr = [];
+          if (props.mattressWidth) {
+            data.mattress_width = props.mattressWidth;
+            msgArr.push("床垫宽");
+          }
+          if (props.mattressLength) {
+            data.mattress_length = props.mattressLength;
+            msgArr.push("床垫长");
+          }
+          setTimeout(() => {
+            setMxSpringQtyWidthAndLength(bednetMxData.value[0]);
+            ElMessage.success("已读取规格:" + msgArr.join("、") + "参数,弹簧排列数已刷新");
+          }, 200);
+        }
+      }
     });
 
     nextTick(() => {

+ 29 - 5
JLHWEB/src/views/quote/bednetQuote/hooks/index.tsx

@@ -1810,6 +1810,7 @@ export const useHooks = (t?: any, props?: any) => {
     let _bednetMx = state.vxeTableMxRef?.element.getTableData().fullData ?? [];
     _bednetMx.forEach(itm => {
       itm.if_part = Number(itm.if_part);
+      itm.if_hard_around = Number(itm.if_hard_around);
     });
 
     let _params: any = {
@@ -1844,8 +1845,13 @@ export const useHooks = (t?: any, props?: any) => {
     if (state.vxeTableMxSpringRef) {
       let { fullData: springData } = state.vxeTableMxSpringRef?.element.getTableData();
 
+      let _spring_qty_width = row.spring_qty_width;
+
+      if (row.if_hard_around && Number(row.hard_around_row) > 0) {
+        _spring_qty_width = _spring_qty_width - Number(row.hard_around_row) * 2;
+      }
       springData.forEach((item, index) => {
-        item.spring_qty_width = row.spring_qty_width;
+        item.spring_qty_width = _spring_qty_width;
       });
       console.log("state.vxeTableMxSpringRef.element :>> ", state.vxeTableMxSpringRef.element);
 
@@ -1885,6 +1891,11 @@ export const useHooks = (t?: any, props?: any) => {
     let { fullData } = state.vxeTableMxRef.element.getTableData();
     let sum = Number(fullData[0].spring_qty_length);
 
+    // 四周加硬 = 总排列 - 四周排列*2
+    if (fullData[0].if_hard_around && Number(fullData[0].hard_around_row) > 0) {
+      sum = sum - Number(fullData[0].hard_around_row) * 2;
+    }
+
     if (state.vxeTableMxSpringRef) {
       let { fullData: springData } = state.vxeTableMxSpringRef?.element.getTableData();
       let lengthValSum = 0;
@@ -2064,7 +2075,11 @@ export const useHooks = (t?: any, props?: any) => {
         const { column, row, status } = scope;
         return (
           <>
-            <el-input v-model={row.hard_around_row} disabled={Number(row.if_hard_around) == 0} />
+            <el-input
+              v-model={row.hard_around_row}
+              disabled={Number(row.if_hard_around) == 0}
+              onChange={() => setMxSpringQtyWidthAndLength(row)}
+            />
           </>
         );
       }
@@ -2237,7 +2252,11 @@ export const useHooks = (t?: any, props?: any) => {
 
     const $tableMx = state.vxeTableMxRef.element;
     let { visibleData } = $tableMx.getTableData();
-    visibleData[0].spring_qty_width = val;
+    let _val = Number(val);
+    if (Number(visibleData[0].if_hard_around) > 0 && Number(visibleData[0].hard_around_row) > 0) {
+      _val = _val + Number(visibleData[0].hard_around_row) * 2;
+    }
+    visibleData[0].spring_qty_width = _val;
     $tableMx.reloadData(visibleData);
   };
 
@@ -2250,7 +2269,11 @@ export const useHooks = (t?: any, props?: any) => {
 
     const $table = state.vxeTableMxRef.element;
     let { visibleData } = $table.getTableData();
-    visibleData[0].spring_qty_length = sumLength;
+    let _val = sumLength;
+    if (Number(visibleData[0].if_hard_around) > 0 && Number(visibleData[0].hard_around_row) > 0) {
+      _val = _val + Number(visibleData[0].hard_around_row) * 2;
+    }
+    visibleData[0].spring_qty_length = _val;
     $table.reloadData(visibleData);
   };
 
@@ -2671,6 +2694,7 @@ export const useHooks = (t?: any, props?: any) => {
     wf_cmp_cb,
     setMxSpringLength,
     gotoSummy,
-    handelChangeDuoqv
+    handelChangeDuoqv,
+    setMxSpringQtyWidthAndLength
   };
 };

+ 16 - 1
JLHWEB/src/views/quote/mattressQuote/detail.vue

@@ -1890,6 +1890,12 @@ const orderDefaultAction = [
     icon: "iconsave-01",
     loading: () => loadingStatus.save,
     limited: () => !orderStatus.value,
+    disabledTextCallBack: data => {
+      if (data.parentid > 0) {
+        return "副规格无法编辑,请在主规格中进行";
+      }
+      return "";
+    },
     clickFunc: () => save()
   }),
   buttonDefault({
@@ -1912,8 +1918,11 @@ const orderDefaultAction = [
       if (data.parentid > 0) {
         return "副规格无法编辑,请在主规格中进行";
       }
+      if (data.xd_flag == 1) {
+        return "已业务下单,不能修改";
+      }
       if (data.flag == 1) {
-        return "单据已审核,不能修改";
+        return "单据已核,不能修改";
       }
       return "";
     },
@@ -1971,6 +1980,9 @@ const orderDefaultAction = [
       if (!CheckPower(94)) {
         return `你没有【报价单-${t("common.businessOrder")}】的使用权限`;
       }
+      if (data.yw_flag == 1) {
+        return "已业务补充审核,无法操作";
+      }
       if (data.parentid > 0) {
         return "副规格无法操作,请在主规格中进行";
       }
@@ -2011,6 +2023,9 @@ const orderDefaultAction = [
       if (!CheckPower(95)) {
         return `你没有【报价单-${t("common.businessOrderCancel")}】的使用权限`;
       }
+      if (data.yw_flag == 1) {
+        return "已业务补充审核,无法操作";
+      }
       if (data.parentid > 0) {
         return "副规格无法操作,请在主规格中进行";
       }

+ 14 - 1
JLHWEB/src/views/quote/mattressQuote/hooks/index.tsx

@@ -3118,7 +3118,20 @@ export const useHooks = (t?: any) => {
       field: "moneyrate",
       title: "币种",
       render: (scope: any) => {
-        return <>{scope.row.moneyrate > 1 ? "美元" : "人民币"}</>;
+        return (
+          <>
+            <div class="flx-justify-between">
+              <span>
+                <>{scope.row.moneyrate > 1 ? `美元` : "人民币"}</>
+              </span>
+              {scope.row.moneyrate > 1 && (
+                <span>
+                  <>{scope.row.moneyrate}</>
+                </span>
+              )}
+            </div>
+          </>
+        );
       },
       basicinfo: {
         el: "select",

+ 20 - 3
JLHWEB/src/views/quote/mattressQuote/index.vue

@@ -221,6 +221,15 @@ const toAuditing = (params: any, message: string) => {
     return;
   }
 
+  curRecords.map(o => {
+    if (params.hasOwnProperty("xd_flag")) {
+      if (o.yw_flag == 1) {
+        ElMessage.warning("已业务补充审核,无法修改");
+        return;
+      }
+    }
+  });
+
   let _mattressids = curRecords.map((item: any) => Number(item.mattressid));
 
   ElMessageBox.confirm(`是否确定要对${curRecords.length}张床垫报价单进行操作`, "询问", {
@@ -292,12 +301,12 @@ const action: detailAction[] = [
         ElMessage.warning("副规格无法编辑");
         return;
       }
-      if (_cur.yw_flag == 1) {
-        ElMessage.warning("已业务补充审核,无法修改");
+      if (_cur.xd_flag == 1) {
+        ElMessage.warning("已业务下单,不能修改");
         return;
       }
       if (_cur.flag == 1) {
-        ElMessage.warning("单据已核,不能修改");
+        ElMessage.warning("单据已核,不能修改");
         return;
       }
 
@@ -329,6 +338,14 @@ const action: detailAction[] = [
           if (item.createby !== userInfo.username && userInfo.empid != 0) {
             throw new Error("只能删除自己创建的报价单");
           }
+          if (item.xd_flag == 1) {
+            ElMessage.warning("已业务下单,不能删除");
+            return;
+          }
+          if (item.flag == 1) {
+            ElMessage.warning("单据已财核,不能删除");
+            return;
+          }
         });
       } catch (error) {
         ElMessage.error(error.message);