liuhj 8 months ago
parent
commit
a492b37aee

+ 236 - 72
src/components/OP/SuppliesInventory.vue

@@ -1,7 +1,6 @@
 <template>
     <div class="SuppliesInventory-all">
-        <el-dialog top="10vh
-        " width="1200px" title="入库物品" :visible.sync="warehousingsVisible">
+        <el-dialog top="10vh" width="1200px" title="入库物品" :visible.sync="warehousingsVisible">
             <el-form :model="warehousingsruleForm" :rules="warehousingsrules" ref="warehousingsruleForm" label-width="100px" class="demo-ruleForm">
                 <div class="warehousingsrule-input">
                     <el-form-item label="入库数量" prop="quantity">
@@ -33,67 +32,78 @@
                     <el-button size="small" @click="resetForm('warehousingsruleForm')">清空</el-button>
                     <el-button size="small" type="primary" @click="submitForm('warehousingsruleForm')">保存</el-button>
                 </el-form-item>
-                <div class="warehousingsrule-table">
-                    <el-table
-                        height="400"
-                        :data="warehousingslist"
-                        border
-                        style="width: 100%">
-                        <el-table-column
-                        prop="unitPrice"
-                        label="物品单价"
-                        width="80">
-                        <template slot-scope="scope">
-                            {{townum(scope.row.unitPrice)}}
-                        </template>
-                        </el-table-column>
-                        <el-table-column
-                        prop="quantity"
-                        label="物品数量"
-                        width="80">
-                        </el-table-column>
-                        <el-table-column
-                        prop="totalPrice"
-                        label="物品总价"
-                        width="80">
-                        <template slot-scope="scope">
-                            {{townum(scope.row.totalPrice)}}
-                        </template>
-                        </el-table-column>
-                        <el-table-column
-                        prop="supplierName"
-                        label="供应商名称"
-                        width="180">
-                        </el-table-column>
-                        <el-table-column
-                        prop="supplierTel"
-                        label="供应商电话">
-                        </el-table-column>
-                        <el-table-column
-                        prop="supplierAddress"
-                        label="供应商地址">
-                        </el-table-column>
-                        <el-table-column
-                        prop="supplierSource"
-                        label="供应商来源">
-                        </el-table-column>
-                        <el-table-column 
-                        label="操作"
-                        width="155">
-                        <template slot-scope="scope">
-                            <el-button size="mini" title="编辑">编辑</el-button>
-                            <el-button size="mini" title="删除" type="danger" @click="Deleteintolibrary(scope.row)">删除</el-button>
-                        </template>
-                        </el-table-column>
-                    </el-table>
-                </div>
             </el-form>
+            <div class="warehousingsrule-table">
+                <el-table
+                    height="400"
+                    :data="warehousingslist"
+                    border
+                    style="width: 100%">
+                    <el-table-column
+                    prop="unitPrice"
+                    label="物品单价"
+                    width="80">
+                    <template slot-scope="scope">
+                        {{townum(scope.row.unitPrice)}}
+                    </template>
+                    </el-table-column>
+                    <el-table-column
+                    prop="quantity"
+                    label="物品数量"
+                    width="80">
+                    </el-table-column>
+                    <el-table-column
+                    prop="totalPrice"
+                    label="物品总价"
+                    width="80">
+                    <template slot-scope="scope">
+                        {{townum(scope.row.totalPrice)}}
+                    </template>
+                    </el-table-column>
+                    <el-table-column
+                    prop="supplierName"
+                    label="供应商名称"
+                    width="180">
+                    </el-table-column>
+                    <el-table-column
+                    prop="supplierTel"
+                    label="供应商电话">
+                    </el-table-column>
+                    <el-table-column
+                    prop="supplierAddress"
+                    label="供应商地址">
+                    </el-table-column>
+                    <el-table-column
+                    prop="supplierSource"
+                    label="供应商来源">
+                    </el-table-column>
+                    <el-table-column 
+                    label="操作"
+                    width="155">
+                    <template slot-scope="scope">
+                        <el-button size="mini" title="编辑" @click="Editentry(scope.row)">编辑</el-button>
+                        <el-button size="mini" title="删除" type="danger" @click="Deleteintolibrary(scope.row)">删除</el-button>
+                    </template>
+                    </el-table-column>
+                </el-table>
+                <div  v-if="WScount>WSpagesize" class="block">
+                    <el-pagination
+                    @size-change="WShandleSizeChange"
+                    @current-change="WShandleCurrentChange"
+                    :current-page="WScurrentPage"
+                    :page-sizes="[6, 10, 15, 40]"
+                    :page-size="WSpagesize"
+                    layout="total, sizes, prev, pager, next, jumper"
+                    :total="WScount">
+                    </el-pagination>
+                </div>
+            </div>
         </el-dialog>
-        <el-dialog title="添加物品" :visible.sync="AddItemsVisible">
+        <el-dialog width="400px" title="添加物品" :visible.sync="AddItemsVisible">
             <div class="additems-ul">
                 <div class="additems-li">
                     <label>物资类型:</label>
-                    <el-select style="width:220px" @change="AddMaterialTypechange(0)" v-model="AddMaterialType" clearable filterable
+                    <el-select style="width:250px" @change="AddMaterialTypechange(0)" v-model="AddMaterialType" clearable filterable
                         placeholder="请选择">
                         <el-option v-for="item in AddMaterialTypearr" :key="item.id" :label="item.name"
                             :value="item.id">
@@ -102,7 +112,7 @@
                 </div>
                 <div class="additems-li">
                     <label>物资详细类型:</label>
-                    <el-select style="width:220px" v-model="AddMaterialinfoType" clearable filterable
+                    <el-select style="width:250px" v-model="AddMaterialinfoType" clearable filterable
                         placeholder="请选择">
                         <el-option v-for="item in AddMaterialinfoTypearr" :key="item.id" :label="item.name"
                             :value="item.id">
@@ -112,7 +122,7 @@
                 <div class="additems-li">
                     <label>物资名称:</label>
                     <el-input
-                    style="width:220px"
+                    style="width:250px"
                     placeholder="请输入物资名称"
                     v-model="AdditemsName"
                     clearable>
@@ -134,6 +144,28 @@
                 <el-button @click="GoodsOP" type="primary">保存</el-button>
             </div>
         </el-dialog>
+        <el-dialog title="领用物品" :visible.sync="ClaimitemVisible">
+            <el-form :model="ClaimsruleForm" :rules="Claimrules" ref="ClaimsruleForm" label-width="100px" class="demo-ruleForm">
+                <div class="Claimitem-input">
+                    <el-form-item label="关联团组" prop="groupId">
+                        <el-input-number size="small" :precision="2" :controls="false" v-model="ClaimsruleForm.groupId"></el-input-number>
+                    </el-form-item>
+                    <el-form-item label="领用数量" prop="quantity">
+                        <el-input-number size="small" :precision="2" :controls="false" v-model="ClaimsruleForm.quantity"></el-input-number>
+                    </el-form-item>
+                    <el-form-item label="领用原因" prop="reason">
+                        <el-input size="small" placeholder="请输入领用原因" v-model="ClaimsruleForm.reason"></el-input>
+                    </el-form-item>
+                </div>
+                <el-form-item label="备注" prop="remark">
+                    <el-input size="small" placeholder="请输入备注" v-model="ClaimsruleForm.remark"></el-input>
+                </el-form-item>
+                <el-form-item style="text-align: right;">
+                    <el-button size="small" @click="ClaimresetForm('ClaimsruleForm')">清空</el-button>
+                    <el-button size="small" type="primary" @click="ClaimsubmitForm('ClaimsruleForm')">保存</el-button>
+                </el-form-item>
+            </el-form>
+        </el-dialog>
         <div class="SuppliesInventory-head">
             <div class="SuppliesInventory-head-ul">
                 <div class="SuppliesInventory-head-li">
@@ -207,14 +239,26 @@
                 </el-table-column>
                 <el-table-column
                 label="操作"
-                width="220">
+                width="300">
                     <template slot-scope="scope">
                         <el-button size="mini" title="编辑" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
                         <el-button size="mini" @click="instorage(scope.row)" type="primary">入库</el-button>
+                        <el-button size="mini" type="success">领用</el-button>
                         <el-button size="mini" title="删除" type="danger" @click="handleDelete(scope.$index, scope.row)">删除</el-button>
                     </template>
                 </el-table-column>
             </el-table>
+            <div v-if="count>pagesize" class="block">
+                <el-pagination
+                  @size-change="handleSizeChange"
+                  @current-change="handleCurrentChange"
+                  :current-page="currentPage"
+                  :page-sizes="[10, 15, 30, 40]"
+                  :page-size="pagesize"
+                  layout="total, sizes, prev, pager, next, jumper"
+                  :total="count">
+                </el-pagination>
+            </div>
         </div>
     </div>
 </template>
@@ -232,6 +276,12 @@ export default {
             Materialname:'',
             tableData:[],
             AddItemsVisible:false,
+            currentPage:1,
+            pagesize:10,
+            count:0,
+            WScurrentPage:1,
+            WSpagesize:6,
+            WScount:0,
             //新增物品参数
             AddMaterialType:"",
             AddMaterialTypearr:[],
@@ -279,6 +329,29 @@ export default {
                 remark: [
                     { required: true, message: '请输入', trigger: 'blur' },
                 ],
+            },
+            //领用参数
+            ClaimitemVisible:true,
+            ClaimsruleForm:{
+                id:0,
+                groupId:'',
+                quantity:0,
+                reason:'',
+                remark:'',
+            },
+            Claimrules:{
+                groupId: [
+                    { required: true, message: '请选择', trigger: 'change' },
+                ],
+                quantity: [
+                    { required: true, message: '请输入', trigger: 'blur' },
+                ],
+                reason: [
+                    { required: true, message: '请输入', trigger: 'blur' },
+                ],
+                remark: [
+                    { required: true, message: '请输入', trigger: 'blur' },
+                ],
             }
         }
     },
@@ -351,19 +424,39 @@ export default {
                 },
                 data: {
                     portType: 1,
-                    pageIndex: 1,
-                    pageSize: 10,
+                    pageIndex: that.currentPage,
+                    pageSize: that.pagesize,
                     typeIds: that.MaterialinfoTypes,
                     goodsName: that.Materialname,
                 }
             }).then(function (res) {
                 if (res.data.code == 200) {
+                    that.count=res.data.count;
                     that.tableData=res.data.data;
                 }
             }).catch(function (error) {
                 that.$message.error("操作错误,联系信息部!");
             });
         },
+        //分页
+        handleSizeChange(val) {
+            this.currentPage=1;
+            this.pagesize=val;
+            this.GoodsList();
+        },
+        handleCurrentChange(val) {
+            this.currentPage=val;
+            this.GoodsList();
+        },
+        WShandleSizeChange(val) {
+            this.WScurrentPage=1;
+            this.WSpagesize=val;
+            this.instorage({'id':this.ID});
+        },
+        WShandleCurrentChange(val) {
+            this.WScurrentPage=val;
+            this.instorage({'id':this.ID});
+        },
         //新增按钮
         addbtnclick(){
             this.ID=0;
@@ -493,12 +586,13 @@ export default {
                 },
                 data:{
                     portType:1,
-                    pageIndex:1,
-                    pageSize:10,
+                    pageIndex:that.WScurrentPage,
+                    pageSize:that.WSpagesize,
                     goodsId:row.id,
                 }
             }).then(function (res) {
                 if (res.data.code == 200) {
+                    that.WScount=res.data.count;
                     that.warehousingslist=res.data.data;
                 }else{
                     that.$message.error(res.data.msg);
@@ -536,6 +630,36 @@ export default {
                         type: 'success'
                     });
                     that.instorage({'id':that.ID});
+                    that.resetForm('warehousingsruleForm');
+                }else{
+                    that.$message.error(res.data.msg);
+                }
+            }).catch(function (error) {
+                that.$message.error("操作错误,联系信息部!");
+            });
+        },
+        //编辑入库
+        Editentry(val){
+            var url = "/api/PersonnelModule/GoodsStorageInfo/"+val.id+"?portType=1"
+            var that = this
+            this.$axios({
+                method: 'get',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' 
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    var datainfo=res.data.data;
+                    that.warehousingsruleForm.id=datainfo.id;
+                    that.warehousingsruleForm.quantity=datainfo.quantity;
+                    that.warehousingsruleForm.unitPrice=datainfo.unitPrice;
+                    that.warehousingsruleForm.totalPrice=datainfo.totalPrice;
+                    that.warehousingsruleForm.supplierName=datainfo.supplierName;
+                    that.warehousingsruleForm.supplierTel=datainfo.supplierTel;
+                    that.warehousingsruleForm.supplierAddress=datainfo.supplierAddress;
+                    that.warehousingsruleForm.supplierSource=datainfo.supplierSource;
+                    that.warehousingsruleForm.remark=datainfo.remark;
                 }else{
                     that.$message.error(res.data.msg);
                 }
@@ -579,7 +703,7 @@ export default {
                 });          
             });
         },
-        //
+        //入库
         submitForm(formName) {
             this.$refs[formName].validate((valid) => {
             if (valid) {
@@ -591,8 +715,24 @@ export default {
             });
         },
         resetForm(formName) {
+            this.warehousingsruleForm.id=0;
             this.$refs[formName].resetFields();
-        }
+        },
+        //领用
+        ClaimsubmitForm(formName) {
+            this.$refs[formName].validate((valid) => {
+            if (valid) {
+                console.log('嗷嗷');
+            } else {
+                console.log('error submit!!');
+                return false;
+            }
+            });
+        },
+        ClaimresetForm(formName) {
+            this.ClaimsruleForm.id=0;
+            this.$refs[formName].resetFields();
+        },
     },
     mounted(){
         this.Userid=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
@@ -627,11 +767,6 @@ export default {
 .SuppliesInventory-head-ul{
     display: flex;
 }
-.additems-ul{
-    display: flex;
-    justify-content: space-between;
-    flex-wrap: wrap;
-}
 .additems-li{
     margin-bottom: 10px;
 }
@@ -663,4 +798,33 @@ export default {
 .warehousingsrule-table .el-table td.el-table__cell div{
     font-size: 12px;
 }
+.SuppliesInventory-table .block{
+    text-align: center;
+    margin-top: 10px;
+}
+.warehousingsrule-table .block{
+    text-align: center;
+    margin-top: 10px;
+}
+.additems-li label{
+    display: inline-block;
+    width: 105px;
+}
+.Claimitem-input{
+    display: flex;
+    flex-wrap: wrap;
+    justify-content: space-between;
+}
+.Claimitem-input .el-form-item{
+    width: 33%;
+}
+.Claimitem-input .el-input-number{
+    width: 100%;
+}
+.Claimitem-input .el-form-item{
+    margin-bottom: 10px;
+}
+.Claimitem-input .el-form-item__error{
+    top: 82%;
+}
 </style>

+ 1 - 0
src/components/Resource/OpOfficialActivities.vue

@@ -265,6 +265,7 @@
                             name="files"
                             >
                                 <el-button slot="trigger" size="small" type="primary">选取文件</el-button>
+                                <span style="color: red;font-size: 12px;">* 需上传:对方初次回复的邮件/微信截图和最后确认会面的信息截图</span>
                                 <!-- <el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button> -->
                             </el-upload>
                         </el-form-item>