ysc 1 rok temu
rodzic
commit
e2418a8890

+ 4 - 2
package.json

@@ -30,7 +30,8 @@
     "vue-easy-printer": "^1.0.6",
     "vue-router": "3.4.9",
     "vue-to-pdf": "^1.0.0",
-    "vuex": "3.1.0"
+    "vuex": "3.1.0",
+    "wangeditor": "^4.7.15"
   },
   "devDependencies": {
     "@vue/cli-plugin-babel": "4.4.4",
@@ -55,7 +56,8 @@
     "serve-static": "1.13.2",
     "svg-sprite-loader": "4.1.3",
     "svgo": "1.2.2",
-    "vue-template-compiler": "2.6.14"
+    "vue-template-compiler": "2.6.14",
+    "vue-direction-key": "^1.0.5"
   },
   "browserslist": [
     "> 1%",

+ 2 - 2
src/api/file/file.js

@@ -1,8 +1,8 @@
 import request from '@/utils/request'
 
-let domain = 'http://localhost:10050';
+// let domain = 'http://localhost:10050';
 
-// let domain = 'http://oa.aivfo.com:36000';
+let domain = 'http://oa.aivfo.com:36000';
 
 /**
  * 上传文件

+ 24 - 14
src/views/material/asset.vue

@@ -87,8 +87,8 @@
             </template>
           </el-table-column>
           <el-table-column label="设备型号" prop="equipmentType" :show-overflow-tooltip="true"/>
-<!--          <el-table-column label="设备编号" prop="equipmentNumber" :show-overflow-tooltip="true"/>-->
-<!--          <el-table-column label="原厂编号" prop="factoryNumber" :show-overflow-tooltip="true"/>-->
+          <!--          <el-table-column label="设备编号" prop="equipmentNumber" :show-overflow-tooltip="true"/>-->
+          <!--          <el-table-column label="原厂编号" prop="factoryNumber" :show-overflow-tooltip="true"/>-->
           <el-table-column label="生产厂家" prop="factoryName" :show-overflow-tooltip="true"/>
           <el-table-column label="购入日期" prop="buyDate"/>
           <el-table-column label="状态" width="90">
@@ -178,18 +178,18 @@
             <el-form-item label="数量" prop="num" v-if="form.assetType==='1'">
               <el-input-number v-model="form.num"></el-input-number>
             </el-form-item>
-<!--            <el-form-item label="设备设施名称" prop="equipmentName">-->
-<!--              <el-input v-model="form.equipmentName" placeholder="请输入设备设施名称" maxlength="30"/>-->
-<!--            </el-form-item>-->
+            <!--            <el-form-item label="设备设施名称" prop="equipmentName">-->
+            <!--              <el-input v-model="form.equipmentName" placeholder="请输入设备设施名称" maxlength="30"/>-->
+            <!--            </el-form-item>-->
             <el-form-item label="设备型号" prop="equipmentType">
               <el-input v-model="form.equipmentType" placeholder="请输入设备型号" maxlength="30"/>
             </el-form-item>
-<!--            <el-form-item label="设备编号" prop="equipmentNumber">-->
-<!--              <el-input v-model="form.equipmentNumber" placeholder="请输入设备编号" maxlength="30"/>-->
-<!--            </el-form-item>-->
-<!--            <el-form-item label="原厂编号" prop="factoryNumber">-->
-<!--              <el-input v-model="form.factoryNumber" placeholder="请输入原厂编号"></el-input>-->
-<!--            </el-form-item>-->
+            <!--            <el-form-item label="设备编号" prop="equipmentNumber">-->
+            <!--              <el-input v-model="form.equipmentNumber" placeholder="请输入设备编号" maxlength="30"/>-->
+            <!--            </el-form-item>-->
+            <!--            <el-form-item label="原厂编号" prop="factoryNumber">-->
+            <!--              <el-input v-model="form.factoryNumber" placeholder="请输入原厂编号"></el-input>-->
+            <!--            </el-form-item>-->
             <el-form-item label="生产厂家" prop="factoryName">
               <el-input v-model="form.factoryName" placeholder="请输入生产厂家"></el-input>
             </el-form-item>
@@ -565,6 +565,18 @@ export default {
 
     /** 提交按钮 */
     submitForm() {
+      if (this.accessoryList && this.accessoryList.length > 0) {
+        let valid = true
+        this.accessoryList.forEach(item => {
+          if (!item.accessoryName) {
+            valid = false
+          }
+        })
+        if (!valid) {
+          this.$message.warning("配件名称不能为空")
+          return
+        }
+      }
       this.$refs["form"].validate(valid => {
         if (valid) {
           this.form['accessoryList'] = this.accessoryList
@@ -587,7 +599,7 @@ export default {
     },
     /** 删除按钮操作 */
     handleDelete(row) {
-      this.$confirm('是否确认删除"' + row.assetName + '"?').then(function () {
+      this.$confirm('是否确认删除资产名称为【' + row.assetName + '】的资产?').then(function () {
         return delAsset(row.id);
       }).then(() => {
         this.getList();
@@ -598,8 +610,6 @@ export default {
 
     /**  流转按钮操作 */
     handleTransfer(row) {
-      this.resetForm("transferForm");
-
       getDeptUserTree('').then(res => {
         this.userList = res.data
       })

+ 2 - 1
src/views/material/components/category.vue

@@ -202,11 +202,13 @@ export default {
         if (valid) {
           if (this.form.id != undefined) {
             updateCategory(this.form).then(response => {
+              this.$message.success("操作成功")
               this.open = false;
               this.getCategoryTree();
             });
           } else {
             addCategory(this.form).then(response => {
+              this.$message.success("新增成功")
               this.open = false;
               this.getCategoryTree();
             });
@@ -216,7 +218,6 @@ export default {
     },
     /** 删除按钮操作 */
     handleDelete(row) {
-      console.log(row);
       this.$confirm('是否确认删除名称为"' + row.name + '"的数据项?').then(function () {
         return delCategory(row.id);
       }).then(() => {

+ 5 - 2
src/views/material/myReceive.vue

@@ -56,7 +56,7 @@
     </el-table>
 
     <!-- 资产详情对话框 -->
-    <el-dialog title="资产详情" :visible.sync="detailOpen" width="800px" append-to-body @close="cancel">
+    <el-dialog :title="title" :visible.sync="detailOpen" width="800px" append-to-body @close="cancel">
       <asset-detail :form="form"></asset-detail>
       <div v-if="confirmDialog" slot="footer" class="dialog-footer">
         <el-button type="primary" size="mini" @click="submitConfirm">确 定</el-button>
@@ -81,7 +81,8 @@ export default {
       detailOpen: false,
       confirmDialog: false,
       toConfirmTransferId: undefined,
-      form: {}
+      form: {},
+      title:''
     }
   },
   created() {
@@ -108,6 +109,7 @@ export default {
       this.toConfirmTransferId = row.transferId
       getAsset(row.id).then(res => {
         this.form = res.data
+        this.title='物品领用确认'
         this.confirmDialog = true
         this.detailOpen = true;
       })
@@ -131,6 +133,7 @@ export default {
       }
       getAsset(row.id).then(res => {
         this.form = res.data
+        this.title='物品详情'
         this.detailOpen = true;
       })
     },

+ 12 - 9
src/views/material/officeSupply.vue

@@ -73,7 +73,7 @@
             size="mini"
             type="text"
             icon="el-icon-edit"
-            v-if="showEditBtn(scope.row)"
+            :disabled="disabledBtn(scope.row)"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['material:office:edit']"
           >修改
@@ -82,6 +82,7 @@
             size="mini"
             type="text"
             icon="el-icon-delete"
+            :disabled="disabledBtn(scope.row)"
             @click="handleDelete(scope.row)"
             v-hasPermi="['material:office:delete']"
           >删除
@@ -385,20 +386,22 @@ export default {
       this.handleQuery();
     },
     handleSizeChange(val) {
-      this.pageSize = val;
+      this.queryParams.pageSize = val;
       this.getList();
     },
     handleCurrentChange(val) {
-      this.pageNum = val;
+      this.queryParams.pageNum = val;
       this.getList();
     },
 
-    showEditBtn(row) {
-      if (DateUtil.getMinutes() < DateUtil.getMinutes(DateUtil.day(DateUtil.month() + '-25'))) {
-        return DateUtil.unix(row.month) >= DateUtil.unix(DateUtil.afterMonth())
-      } else {
-        return DateUtil.unix(row.month) >= DateUtil.unix(DateUtil.afterMonth())
-      }
+    disabledBtn(row) {
+      return DateUtil.unix(row.month) < DateUtil.unix(DateUtil.afterMonth())
+
+      // if (DateUtil.getMinutes() < DateUtil.getMinutes(DateUtil.day(DateUtil.month() + '-25'))) {
+      //   return DateUtil.getMinutes(row.month) < DateUtil.getMinutes(DateUtil.afterMonth())
+      // } else {
+      //   return DateUtil.getMinutes(row.month) < DateUtil.getMinutes(DateUtil.afterMonth())
+      // }
     },
 
     /** 新增按钮操作 */

+ 21 - 14
src/views/material/receive.vue

@@ -113,7 +113,7 @@
             size="mini"
             type="text"
             icon="el-icon-edit"
-            v-if="showEditBtn(scope.row)"
+            :disabled="disabledBtn(scope.row)"
             @click="handleUpdate(scope.row)"
             v-hasPermi="['material:receive:edit']"
           >修改
@@ -122,6 +122,7 @@
             size="mini"
             type="text"
             icon="el-icon-delete"
+            :disabled="disabledBtn(scope.row)"
             @click="handleDelete(scope.row)"
             v-hasPermi="['material:receive:delete']"
           >删除
@@ -299,8 +300,8 @@
     </el-dialog>
 
     <!-- 修改物料配置对话框 -->
-    <el-dialog title="修改" :visible.sync="editOpen" @close="dialogClose" width="500px" append-to-body
-               :close-on-click-modal="false">
+    <el-dialog title="修改物料" :visible.sync="editOpen" @close="dialogClose" width="500px" class="custom-dialog"
+               append-to-body :close-on-click-modal="false">
       <el-form ref="editForm" :model="editForm" :rules="rules" size="mini" label-width="100px">
         <el-form-item label="数据周期" prop="date">
           <div v-if="editForm.monthOrWeek==='1'">
@@ -553,11 +554,10 @@ export default {
       let temp = _.cloneDeep(val)
       let dateArr = []
       temp.forEach(item => {
-        if (dateArr.indexOf(item) < 0) {
+        if (dateArr.indexOf(item.recordDate) < 0) {
           dateArr.push(item.recordDate)
         }
       })
-
       if (dateArr.length > 1) {
         this.$message.warning("多条数据不属于同月,请重新选择")
         this.$refs.materialList.clearSelection()
@@ -574,11 +574,11 @@ export default {
     },
 
     handleSizeChange(val) {
-      this.pageSize = val;
+      this.queryParams.pageSize = val;
       this.getList();
     },
     handleCurrentChange(val) {
-      this.pageNum = val;
+      this.queryParams.pageNum = val;
       this.getList();
     },
     getPickerOptions(type) {
@@ -601,25 +601,24 @@ export default {
         }
       }
     },
-    showEditBtn(row) {
+    disabledBtn(row) {
       if (row.monthOrWeek === '1') {
         if (row.receivedNum > 0) {
-          return false;
+          return true;
         }
-        if (DateUtil.getMinutes() < DateUtil.getMinutes(DateUtil.day(DateUtil.month() + '25'))) {
-          return DateUtil.unix(row.recordDate) >= DateUtil.unix(DateUtil.afterMonth())
+        if (DateUtil.unix() < DateUtil.unix(DateUtil.day(DateUtil.month() + '25'))) {
+          return DateUtil.unix(DateUtil.month()) > DateUtil.unix(row.recordDate)
         } else {
-          return DateUtil.unix(row.recordDate) >= DateUtil.unix(DateUtil.afterMonth())
+          return DateUtil.unix(row.recordDate) < DateUtil.unix(DateUtil.afterMonth(2))
         }
       } else {
         let split = row.recordDate.split("~");
         let date = split[0];
         let minutes = DateUtil.unix(date);
         let minutes1 = DateUtil.unix(DateUtil.afterWeek());
-        return minutes >= minutes1
+        return minutes < minutes1
       }
     },
-
     /** 新增按钮操作 */
     handleAdd() {
       this.reset();
@@ -682,6 +681,10 @@ export default {
 
     },
     handleExport() {
+      if (!this.queryParams.date) {
+        this.$message.warning("请选择数据周期")
+        return
+      }
       exportMaterial(this.queryParams)
     },
     /** 周数据填报操作 */
@@ -777,4 +780,8 @@ export default {
   padding-left: 5px;
   padding-right: 5px;
 }
+
+.custom-dialog ::v-deep .el-dialog__body {
+  padding: 0 20px 10px 20px;
+}
 </style>

+ 1 - 1
vue.config.js

@@ -35,7 +35,7 @@ module.exports = {
     proxy: {
       [process.env.VUE_APP_BASE_API]: {
         target: `http://127.0.0.1:10050`,
-        changeOrigin: false
+        changeOrigin: true
         // pathRewrite: {
         //   ['^' + process.env.VUE_APP_BASE_API]: ''
         // }