浏览代码

手动入库更新

cz 1 年之前
父节点
当前提交
540f752107
共有 2 个文件被更改,包括 349 次插入305 次删除
  1. 303 271
      src/assets/styles/ruoyi.scss
  2. 46 34
      src/views/purchaseSales/outAndInWarehouse/manualWarehousing/index.vue

+ 303 - 271
src/assets/styles/ruoyi.scss

@@ -4,274 +4,306 @@
  */
 
  /** 基础通用 **/
-.pt5 {
-	padding-top: 5px;
-}
-.pr5 {
-	padding-right: 5px;
-}
-.pb5 {
-	padding-bottom: 5px;
-}
-.mt5 {
-	margin-top: 5px;
-}
-.mr5 {
-	margin-right: 5px;
-}
-.mb5 {
-	margin-bottom: 5px;
-}
-.mb8 {
-	margin-bottom: 8px;
-}
-.ml5 {
-	margin-left: 5px;
-}
-.mt10 {
-	margin-top: 10px;
-}
-.mr10 {
-	margin-right: 10px;
-}
-.mb10 {
-	margin-bottom: 10px;
-}
-.ml10 {
-	margin-left: 10px;
-}
-.mt20 {
-	margin-top: 20px;
-}
-.mr20 {
-	margin-right: 20px;
-}
-.mb20 {
-	margin-bottom: 20px;
-}
-.ml20 {
-	margin-left: 20px;
-}
-
-.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
-	font-family: inherit;
-	font-weight: 500;
-	line-height: 1.1;
-	color: inherit;
-}
-
-.el-form .el-form-item__label {
-	font-weight: 700;
-}
-.el-dialog:not(.is-fullscreen) {
-	margin-top: 6vh !important;
-}
-
-.el-dialog.scrollbar .el-dialog__body {
-	overflow: auto;
-	overflow-x: hidden;
-	max-height: 70vh;
-	padding: 10px 20px 0;
-}
-
-.el-table {
-	.el-table__header-wrapper, .el-table__fixed-header-wrapper {
-		th {
-			word-break: break-word;
-			background-color: #EEEEEE !important;
-			color: #515a6e;
-			height: 50px !important;
-			font-size: 14px;
-		}
-	}
-	.el-table__body-wrapper {
-		.el-button [class*="el-icon-"] + span {
-			margin-left: 1px;
-		}
-	}
-}
-
-/** 表单布局 **/
-.form-header {
-    font-size:15px;
-	color:#6379bb;
-	border-bottom:1px solid #ddd;
-	margin:8px 10px 25px 10px;
-	padding-bottom:5px
-}
-
-/** 表格布局 **/
-.pagination-container {
-	// position: relative;
-	height: 25px;
-	margin-bottom: 10px;
-	margin-top: 15px;
-	padding: 10px 20px !important;
-}
-
-/* tree border */
-.tree-border {
-    margin-top: 5px;
-    border: 1px solid #e5e6e7;
-    background: #FFFFFF none;
-    border-radius:4px;
-    width: 100%;
-}
-
-.pagination-container .el-pagination {
-	right: 0;
-	position: absolute;
-}
-
-@media ( max-width : 768px) {
-  .pagination-container .el-pagination > .el-pagination__jump {
-    display: none !important;
-  }
-  .pagination-container .el-pagination > .el-pagination__sizes {
-    display: none !important;
-  }
-}
-
-.el-table .fixed-width .el-button--small {
-	padding-left: 0;
-	padding-right: 0;
-	width: inherit;
-}
-
-/** 表格更多操作下拉样式 */
-.el-table .el-dropdown-link {
-	cursor: pointer;
-	color: #409EFF;
-	margin-left: 10px;
-}
-
-.el-table .el-dropdown, .el-icon-arrow-down {
-	font-size: 12px;
-}
-
-.el-tree-node__content > .el-checkbox {
-	margin-right: 8px;
-}
-
-.list-group-striped > .list-group-item {
-	border-left: 0;
-	border-right: 0;
-	border-radius: 0;
-	padding-left: 0;
-	padding-right: 0;
-}
-
-.list-group {
-	padding-left: 0px;
-	list-style: none;
-}
-
-.list-group-item {
-	border-bottom: 1px solid #e7eaec;
-	border-top: 1px solid #e7eaec;
-	margin-bottom: -1px;
-	padding: 11px 0px;
-	font-size: 13px;
-}
-
-.pull-right {
-	float: right !important;
-}
-
-.el-card__header {
-	padding: 14px 15px 7px !important;
-	min-height: 40px;
-}
-
-.el-card__body {
-	padding: 15px 20px 20px 20px !important;
-}
-
-.card-box {
-	padding-right: 15px;
-	padding-left: 15px;
-	margin-bottom: 10px;
-}
-
-/* button color */
-.el-button--cyan.is-active,
-.el-button--cyan:active {
-  background: #20B2AA;
-  border-color: #20B2AA;
-  color: #FFFFFF;
-}
-
-.el-button--cyan:focus,
-.el-button--cyan:hover {
-  background: #48D1CC;
-  border-color: #48D1CC;
-  color: #FFFFFF;
-}
-
-.el-button--cyan {
-  background-color: #20B2AA;
-  border-color: #20B2AA;
-  color: #FFFFFF;
-}
-
-/* text color */
-.text-navy {
-	color: #1ab394;
-}
-
-.text-primary {
-	color: inherit;
-}
-
-.text-success {
-	color: #1c84c6;
-}
-
-.text-info {
-	color: #23c6c8;
-}
-
-.text-warning {
-	color: #f8ac59;
-}
-
-.text-danger {
-	color: #ed5565;
-}
-
-.text-muted {
-	color: #888888;
-}
-
-/* image */
-.img-circle {
-	border-radius: 50%;
-}
-
-.img-lg {
-	width: 120px;
-	height: 120px;
-}
-
-.avatar-upload-preview {
-	position: absolute;
-	top: 50%;
-	transform: translate(50%, -50%);
-	width: 200px;
-	height: 200px;
-	border-radius: 50%;
-	box-shadow: 0 0 4px #ccc;
-	overflow: hidden;
-}
-
-/* 拖拽列样式 */
-.sortable-ghost{
-	opacity: .8;
-	color: #fff!important;
-	background: #42b983!important;
-}
-
-/* 表格右侧工具栏样式 */
-.top-right-btn {
-	margin-left: auto;
-}
+ .pt5 {
+ 	padding-top: 5px;
+ }
+
+ .pr5 {
+ 	padding-right: 5px;
+ }
+
+ .pb5 {
+ 	padding-bottom: 5px;
+ }
+
+ .mt5 {
+ 	margin-top: 5px;
+ }
+
+ .mr5 {
+ 	margin-right: 5px;
+ }
+
+ .mb5 {
+ 	margin-bottom: 5px;
+ }
+
+ .mb8 {
+ 	margin-bottom: 8px;
+ }
+
+ .ml5 {
+ 	margin-left: 5px;
+ }
+
+ .mt10 {
+ 	margin-top: 10px;
+ }
+
+ .mr10 {
+ 	margin-right: 10px;
+ }
+
+ .mb10 {
+ 	margin-bottom: 10px;
+ }
+
+ .ml10 {
+ 	margin-left: 10px;
+ }
+
+ .mt20 {
+ 	margin-top: 20px;
+ }
+
+ .mr20 {
+ 	margin-right: 20px;
+ }
+
+ .mb20 {
+ 	margin-bottom: 20px;
+ }
+
+ .ml20 {
+ 	margin-left: 20px;
+ }
+
+ .h1,
+ .h2,
+ .h3,
+ .h4,
+ .h5,
+ .h6,
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ 	font-family: inherit;
+ 	font-weight: 500;
+ 	line-height: 1.1;
+ 	color: inherit;
+ }
+
+ .el-form .el-form-item__label {
+ 	font-weight: 700;
+ }
+
+ .el-dialog:not(.is-fullscreen) {
+ 	margin-top: 6vh !important;
+ }
+
+ .el-dialog.scrollbar .el-dialog__body {
+ 	overflow: auto;
+ 	overflow-x: hidden;
+ 	max-height: 70vh;
+ 	padding: 10px 20px 0;
+ }
+
+ .el-table {
+
+ 	.el-table__header-wrapper,
+ 	.el-table__fixed-header-wrapper {
+ 		th {
+ 			word-break: break-word;
+ 			// background-color: #EEEEEE !important;
+ 			color: #515a6e;
+ 			height: 50px !important;
+ 			font-size: 14px;
+ 		}
+ 	}
+
+ 	.el-table__body-wrapper {
+ 		.el-button [class*="el-icon-"]+span {
+ 			margin-left: 1px;
+ 		}
+ 	}
+ }
+
+ /** 表单布局 **/
+ .form-header {
+ 	font-size: 15px;
+ 	color: #6379bb;
+ 	border-bottom: 1px solid #ddd;
+ 	margin: 8px 10px 25px 10px;
+ 	padding-bottom: 5px
+ }
+
+ /** 表格布局 **/
+ .pagination-container {
+ 	// position: relative;
+ 	height: 25px;
+ 	margin-bottom: 10px;
+ 	margin-top: 15px;
+ 	padding: 10px 20px !important;
+ }
+
+ /* tree border */
+ .tree-border {
+ 	margin-top: 5px;
+ 	border: 1px solid #e5e6e7;
+ 	background: #FFFFFF none;
+ 	border-radius: 4px;
+ 	width: 100%;
+ }
+
+ .pagination-container .el-pagination {
+ 	right: 0;
+ 	position: absolute;
+ }
+
+ @media (max-width : 768px) {
+ 	.pagination-container .el-pagination>.el-pagination__jump {
+ 		display: none !important;
+ 	}
+
+ 	.pagination-container .el-pagination>.el-pagination__sizes {
+ 		display: none !important;
+ 	}
+ }
+
+ .el-table .fixed-width .el-button--small {
+ 	padding-left: 0;
+ 	padding-right: 0;
+ 	width: inherit;
+ }
+
+ /** 表格更多操作下拉样式 */
+ .el-table .el-dropdown-link {
+ 	cursor: pointer;
+ 	color: #409EFF;
+ 	margin-left: 10px;
+ }
+
+ .el-table .el-dropdown,
+ .el-icon-arrow-down {
+ 	font-size: 12px;
+ }
+
+ .el-tree-node__content>.el-checkbox {
+ 	margin-right: 8px;
+ }
+
+ .list-group-striped>.list-group-item {
+ 	border-left: 0;
+ 	border-right: 0;
+ 	border-radius: 0;
+ 	padding-left: 0;
+ 	padding-right: 0;
+ }
+
+ .list-group {
+ 	padding-left: 0px;
+ 	list-style: none;
+ }
+
+ .list-group-item {
+ 	border-bottom: 1px solid #e7eaec;
+ 	border-top: 1px solid #e7eaec;
+ 	margin-bottom: -1px;
+ 	padding: 11px 0px;
+ 	font-size: 13px;
+ }
+
+ .pull-right {
+ 	float: right !important;
+ }
+
+ .el-card__header {
+ 	padding: 14px 15px 7px !important;
+ 	min-height: 40px;
+ }
+
+ .el-card__body {
+ 	padding: 15px 20px 20px 20px !important;
+ }
+
+ .card-box {
+ 	padding-right: 15px;
+ 	padding-left: 15px;
+ 	margin-bottom: 10px;
+ }
+
+ /* button color */
+ .el-button--cyan.is-active,
+ .el-button--cyan:active {
+ 	background: #20B2AA;
+ 	border-color: #20B2AA;
+ 	color: #FFFFFF;
+ }
+
+ .el-button--cyan:focus,
+ .el-button--cyan:hover {
+ 	background: #48D1CC;
+ 	border-color: #48D1CC;
+ 	color: #FFFFFF;
+ }
+
+ .el-button--cyan {
+ 	background-color: #20B2AA;
+ 	border-color: #20B2AA;
+ 	color: #FFFFFF;
+ }
+
+ /* text color */
+ .text-navy {
+ 	color: #1ab394;
+ }
+
+ .text-primary {
+ 	color: inherit;
+ }
+
+ .text-success {
+ 	color: #1c84c6;
+ }
+
+ .text-info {
+ 	color: #23c6c8;
+ }
+
+ .text-warning {
+ 	color: #f8ac59;
+ }
+
+ .text-danger {
+ 	color: #ed5565;
+ }
+
+ .text-muted {
+ 	color: #888888;
+ }
+
+ /* image */
+ .img-circle {
+ 	border-radius: 50%;
+ }
+
+ .img-lg {
+ 	width: 120px;
+ 	height: 120px;
+ }
+
+ .avatar-upload-preview {
+ 	position: absolute;
+ 	top: 50%;
+ 	transform: translate(50%, -50%);
+ 	width: 200px;
+ 	height: 200px;
+ 	border-radius: 50%;
+ 	box-shadow: 0 0 4px #ccc;
+ 	overflow: hidden;
+ }
+
+ /* 拖拽列样式 */
+ .sortable-ghost {
+ 	opacity: .8;
+ 	color: #fff !important;
+ 	background: #42b983 !important;
+ }
+
+ /* 表格右侧工具栏样式 */
+ .top-right-btn {
+ 	margin-left: auto;
+ }

+ 46 - 34
src/views/purchaseSales/outAndInWarehouse/manualWarehousing/index.vue

@@ -11,9 +11,9 @@
       </byTable>
     </div>
 
-    <el-dialog title="手动入库" v-if="dialogVisible" v-model="dialogVisible" width="1300" v-loading="loadingDialog">
+    <el-dialog title="手动入库" v-if="dialogVisible" v-model="dialogVisible" width="90%" v-loading="loadingDialog">
       <div style="width:100%;display:flex">
-        <div style="flex:1;overflow:auto;height:calc(100vh - 270px)">
+        <div style="width:55%;overflow:auto;height:calc(100vh - 220px)">
           <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="submit">
             <template #workOrderId>
               <div style="width: 100%">
@@ -24,21 +24,10 @@
               </div>
             </template>
 
-            <template #detailsOne>
+            <!-- <template #detailsOne>
               <div style="width: 100%">
                 <el-table :data="summaryList" show-summary :summary-method="getSummaries">
                   <el-table-column type="index" width="60" align="center" />
-                  <!-- <el-table-column label="是否扫码" width="80">
-                    <template #default="{ row, $index }">
-                      <div>
-                        <span style="padding: 4px" :class="[row.isScan == 1 ? 'active' : 'disActive']">
-                          {{
-                proxy.dictValueLabel(row.isScan, scanData)
-              }}
-                        </span>
-                      </div>
-                    </template>
-                  </el-table-column> -->
                   <el-table-column prop="productCode" label="产品编码" width="140" />
                   <el-table-column prop="productName" label="产品名称" min-width="160" />
                   <el-table-column prop="productSpec" label="规格型号" width="120" />
@@ -49,7 +38,7 @@
                   </el-table-column>
                 </el-table>
               </div>
-            </template>
+            </template> -->
 
             <template #details>
               <div style="width: 100%">
@@ -68,12 +57,12 @@
                     </template>
                   </el-table-column>
                   <el-table-column prop="productCode" label="产品编码" width="140" />
-                  <el-table-column prop="productName" label="产品名称" min-width="160" />
+                  <el-table-column prop="productName" label="产品名称" min-width="150" />
                   <el-table-column prop="productSpec" label="规格型号" width="120" />
-                  <el-table-column prop="productUnit" label="单位" width="80" :formatter="
+                  <!-- <el-table-column prop="productUnit" label="单位" width="80" :formatter="
                   (row) => dictValueLabel(row.productUnit, productUnit)
-                " />
-                  <el-table-column label="入库数量" width="160" prop="quantity">
+                " /> -->
+                  <el-table-column label="入库数量" width="110" prop="quantity">
                     <template #default="{ row, $index }">
                       <div style="width: 100%">
                         <el-form-item :prop="'list.' + $index + '.quantity'" :rules="rules.quantity" :inline-message="true">
@@ -93,16 +82,33 @@
             </template>
           </byForm>
         </div>
-        <div style="width:300px;margin-left:20px">
+        <div style="width:45%;margin-left:20px;height:calc(100vh - 220px)">
           <el-card class="box-card" style="height:100%;position: relative;">
-            <div class="box">
-              <img src="@/assets/images/scanz.png" class="img" v-if="!isScan" />
-              <img src="@/assets/images/scaning.gif" class="img" v-if="isScan" />
-              <div class="titlea" @click.stop="handleClickScan">
-                {{btnTitle}}
+            <div style="height:100%">
+              <div style="height:260px"></div>
+              <div class="box">
+                <img src="@/assets/images/scanz.png" class="img" v-if="!isScan" />
+                <img src="@/assets/images/scaning.gif" class="img" v-if="isScan" />
+                <div class="titlea" @click.stop="handleClickScan">
+                  {{btnTitle}}
+                </div>
+                <el-input v-model="scanValue" type="password" :disabled="!isScan" ref="scanInput" @change="handleScanValueChange"
+                          @blur="handleScanBlur" class="input" autocomplete="off" />
+              </div>
+              <div style="font-weight:700;font-size:14px;margin-bottom:10px">
+                汇总明细:
+              </div>
+              <div style="width: 100%;height:calc(100% - 240px);overflow:auto">
+
+                <el-table :data="summaryList">
+                  <el-table-column type="index" width="40" align="center" />
+                  <el-table-column prop="productCode" label="产品编码" width="140" />
+                  <el-table-column prop="productName" label="产品名称" />
+                  <el-table-column prop="productSpec" label="规格型号" width="120" />
+                  <el-table-column label="入库数量" width="80" prop="quantity">
+                  </el-table-column>
+                </el-table>
               </div>
-              <el-input v-model="scanValue" type="password" :disabled="!isScan" ref="scanInput" @change="handleScanValueChange" @blur="handleScanBlur"
-                        class="input" autocomplete="off" />
             </div>
           </el-card>
         </div>
@@ -294,11 +300,11 @@ const formConfig = computed(() => {
       slotName: "workOrderId",
       label: "绑定工单",
     },
-    {
-      type: "slot",
-      slotName: "detailsOne",
-      label: "汇总明细",
-    },
+    // {
+    //   type: "slot",
+    //   slotName: "detailsOne",
+    //   label: "汇总明细",
+    // },
     {
       type: "slot",
       slotName: "details",
@@ -556,8 +562,11 @@ const getSummaries = (param) => {
 }
 .box {
   position: absolute;
-  top: 50%;
-  transform: translate(0, -50%);
+  // top: 50%;
+  // transform: translate(0, -50%);
+  top: 0;
+  left: 50%;
+  transform: translate(-50%, 0);
   .img {
     width: 260px;
     height: 260px;
@@ -594,4 +603,7 @@ const getSummaries = (param) => {
   color: #fff;
   border-radius: 4px;
 }
+:deep(.el-card__body) {
+  height: 100% !important;
+}
 </style>