guoyujia il y a 1 an
Parent
commit
dda2fcbfae

+ 173 - 106
src/views/business/reject/index.vue

@@ -3,20 +3,31 @@
     <!-- 左侧区域 -->
     <section class="list-part-container" style="flex: 1">
       <!-- 搜索区域 -->
-      <el-form class="list-search-container" :model="queryParams" ref="queryRef" :inline="true" style="display: flex">
+      <el-form
+        class="list-search-container"
+        ref="queryRef"
+        :inline="true"
+        style="display: flex"
+      >
         <el-form-item class="section-title" label="载具类别" />
         <el-form-item label="类别名称:">
-          <el-input placeholder="请输入类别名称" clearable style="width: 150px" v-model.trim="name" @keydown.enter.prevent  />
+          <el-input
+            placeholder="请输入类别名称"
+            clearable
+            style="width: 150px"
+            v-model.trim="name"
+            @keydown.enter.prevent
+          />
         </el-form-item>
       </el-form>
       <!-- 列表区 -->
       <div class="el-table-container">
         <div class="el-table-inner-container">
-          <el-tree 
+          <el-tree
             ref="categoryTable"
             v-loading="categoryLoading"
             :data="carrierCategoryList"
-            :props="{label: 'name', children: 'children'}"
+            :props="{ label: 'name', children: 'children' }"
             :expand-on-click-node="false"
             :filter-node-method="filterNode"
             default-expand-all
@@ -24,11 +35,15 @@
             highlight-current
             @node-click="handleCurrentCategoryChange"
           >
-          <template #default="{ node, data }">   
+            <template #default="{ node, data }">
               <span>
-                <span v-if="data.parentId == 0" style="display: inline-block; width: 20px;">{{ getNodeIndex(data) }}. </span>
-                <span>{{ node.label }}</span>
+                <span
+                  v-if="data.parentId == 0"
+                  style="display: inline-block; width: 20px"
+                  >{{ getNodeIndex(data) }}.
                 </span>
+                <span>{{ node.label }}</span>
+              </span>
             </template>
           </el-tree>
         </div>
@@ -37,175 +52,227 @@
 
     <!-- 右侧区域 -->
     <section class="list-part-container" style="flex: 3">
-      <el-form class="list-search-container" :model="carrierRejectParams" ref="queryRef" :inline="true">
+      <el-form
+        class="list-search-container"
+        :model="queryCarrierRejectParams"
+        ref="queryRef"
+        :inline="true"
+      >
         <el-form-item class="section-title" label="载具操作明细" />
         <el-form-item label="载具编号:">
-          <el-input placeholder="请输入载具编号" :disabled="carrierCategoryList.length == 0" clearable style="width: 180px" v-model.trim="carrierRejectParams.code" @keydown.enter.prevent @keyup.enter="handleQueryCarrier" />
+          <el-input
+            placeholder="请输入载具编号"
+            :disabled="carrierCategoryList.length == 0"
+            clearable
+            style="width: 180px"
+            v-model.trim="queryCarrierRejectParams.code"
+            @keydown.enter.prevent
+            @keyup.enter="handleQueryCarrier"
+          />
         </el-form-item>
         <el-form-item label="载具状态:">
-          <el-select v-model="carrierRejectParams.isAbandoned" clearable placeholder="请选择载具状态" style="width: 150px">
-            <el-option v-for="dict in carrier_status" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
+          <el-select
+            v-model="queryCarrierRejectParams.isAbandoned"
+            clearable
+            placeholder="请选择载具状态"
+            style="width: 150px"
+          >
+            <el-option
+              v-for="dict in carrier_status"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            ></el-option>
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-button type="info" icon="Search" :disabled="carrierCategoryList.length == 0" @click="handleQueryCarrier">搜索</el-button>
+          <el-button
+            type="info"
+            icon="Search"
+            :disabled="carrierCategoryList.length == 0"
+            @click="handleQueryCarrier"
+            >搜索</el-button
+          >
         </el-form-item>
       </el-form>
 
       <!-- 列表区 -->
       <div class="el-table-container">
         <div class="el-table-inner-container">
-          <el-table v-loading="carrierRejectLoading" :data="carrierRejectList" height="100%">
-            <el-table-column type="index" label="行号" width="50" align="center" />
-            <el-table-column prop="code" label="载具编号" width="120" align="center" />
-            <el-table-column label="状态" width="80" prop="isAbandoned" align="center">
+          <el-table
+            v-loading="carrierRejectLoading"
+            :data="carrierRejectList"
+            height="100%"
+          >
+            <el-table-column
+              type="index"
+              label="行号"
+              width="50"
+              align="center"
+            />
+            <el-table-column
+              prop="code"
+              label="载具编号"
+              width="120"
+              align="center"
+            />
+            <el-table-column
+              label="状态"
+              width="80"
+              prop="isAbandoned"
+              align="center"
+            >
               <template #default="scope">
                 {{ scope.row.status }}
-                <dict-tag :options="carrier_status" :value="scope.row.isAbandoned" />
+                <dict-tag
+                  :options="carrier_status"
+                  :value="scope.row.isAbandoned"
+                />
               </template>
             </el-table-column>
-            <el-table-column prop="operationDate" label="操作日期" width="130" align="center">
+            <el-table-column
+              prop="operationDate"
+              label="操作日期"
+              width="130"
+              align="center"
+            >
               <template #default="scope">
                 {{ proxy.moment(scope.row.operationDate).format("YYYY-MM-DD") }}
               </template>
             </el-table-column>
-            <el-table-column prop="abandonmentReason" label="废弃原因" align="center">
+            <el-table-column
+              prop="abandonmentReason"
+              label="废弃原因"
+              align="center"
+            >
             </el-table-column>
           </el-table>
         </div>
       </div>
-
       <!-- 分页 -->
-      <pagination v-show="carrierRejectTotal > 0" :total="carrierRejectTotal" v-model:page="carrierRejectParams.pageNum" v-model:limit="carrierRejectParams.pageSize" @pagination="getCarriersReject" />
+      <pagination
+        v-show="carrierRejectTotal > 0"
+        :total="carrierRejectTotal"
+        v-model:page="queryCarrierRejectParams.pageNum"
+        v-model:limit="queryCarrierRejectParams.pageSize"
+        @pagination="getCarriersReject"
+      />
     </section>
   </div>
 </template>
   
-  <script setup name="Process">
-import { listCategory, listCategoryInfo } from '@/api/business/carrier'
-import { listReject } from '@/api/business/reject'
-const { proxy } = getCurrentInstance()
-const { carrier_status } = proxy.useDict('carrier_status')
-const { reason_for_abandonment } = proxy.useDict('reason_for_abandonment')
-
-const categoryTable = ref(null)
-const carrierCategoryList = ref([])
-const carrierRejectList = ref([])
-const currentCategory = ref({})
-const categoryLoading = ref(false)
-const carrierRejectLoading = ref(false)
-const carrierRejectTotal = ref(0)
-const name = ref('')
-
+<script setup name="Process">
+import { listCategory } from "@/api/business/carrier";
+import { listReject } from "@/api/business/reject";
+const { proxy } = getCurrentInstance();
+/** 字典数组区 */
+const { carrier_status } = proxy.useDict("carrier_status");
+/** 载具类别变量 */
+const currentCategory = ref({});
+const carrierCategoryList = ref([]);
+const categoryLoading = ref(false);
+const name = ref("");
+/** 载具操作明细变量 */
+const carrierRejectList = ref([]);
+const carrierRejectLoading = ref(false);
+const carrierRejectTotal = ref(0);
+/** 查询对象 */
 const data = reactive({
   form: {},
-  queryParams: {
-    name: '',
-    pageNum: 1,
-    pageSize: 10
-  },
-  carrierRejectParams: {
-    code: '',
+  queryCarrierRejectParams: {
+    code: "",
     pageNum: 1,
     pageSize: 10,
-    isAbandoned: '',
-    categoryId: ''
-  }
-})
+    isAbandoned: "",
+    categoryId: "",
+  },
+});
 
-const { queryParams, carrierRejectParams } = toRefs(data)
-/** 查询对象 */
+const { queryCarrierRejectParams } = toRefs(data);
 
 /****************************  载具类别相关事件  ****************************/
 /** 载具分类列表 */
 const getCategories = () => {
-  categoryLoading.value = true
+  categoryLoading.value = true;
   listCategory().then((res) => {
-    categoryLoading.value = false
-    carrierCategoryList.value = res.rows
+    categoryLoading.value = false;
+    carrierCategoryList.value = res.rows;
     if (carrierCategoryList.value.length > 0) {
-      currentCategory.value = carrierCategoryList.value[0]
+      currentCategory.value = carrierCategoryList.value[0];
       nextTick(() => {
-      proxy.$refs.categoryTable.setCurrentKey(currentCategory.value.id)
-      handleCurrentCategoryChange(currentCategory.value)
-    })
+        proxy.$refs.categoryTable.setCurrentKey(currentCategory.value.id);
+        handleCurrentCategoryChange(currentCategory.value);
+      });
+    } else {
+      carrierRejectList.value = [];
     }
-    else {
-      carrierRejectList.value = []
-    }
-  })
-}
-
+  });
+};
+//载具类别点击事件
 const handleCurrentCategoryChange = (row) => {
   if (row) {
-    currentCategory.value = row
+    currentCategory.value = row;
   } else {
-    currentCategory.value = {}
+    currentCategory.value = {};
     if (carrierCategoryList.value.length > 0) {
-      currentCategory.value = carrierCategoryList.value[0]
+      currentCategory.value = carrierCategoryList.value[0];
     }
   }
   if (currentCategory.value.id) {
-    getCarriersReject()
+    getCarriersReject();
   } else {
-    carrierRejectList.value = []
-    carrierRejectTotal.value = 0
+    carrierRejectList.value = [];
+    carrierRejectTotal.value = 0;
   }
-}
+};
+//载具类别搜索事件
 watch(name, (val) => {
-  proxy.$refs['categoryTable'].filter(val)
-})
+  proxy.$refs["categoryTable"].filter(val);
+});
 const filterNode = (value, data) => {
   if (!value) {
-    return true
+    return true;
   }
-  carrierRejectParams.value.code = ''
-  carrierRejectParams.value.isAbandoned = null
-  handleCurrentCategoryChange(carrierCategoryList.value[0])
-  return data.name.indexOf(value) !== -1
-}
+  queryCarrierRejectParams.value.code = "";
+  queryCarrierRejectParams.value.isAbandoned = null;
+  handleCurrentCategoryChange(carrierCategoryList.value[0]);
+  return data.name.indexOf(value) !== -1;
+};
+//载具类别编号
 function getNodeIndex(data) {
   const index = carrierCategoryList.value.findIndex(
     (item) => item.id === data.id
   );
   return index + 1;
 }
-
-const handleQueryCategory = () => {
-  getCategories()
-}
 /****************************  载具操作明细相关事件  ****************************/
-
+//获取载具废弃明细
 const getCarriersReject = () => {
-  carrierRejectLoading.value = true
-  carrierRejectParams.value.categoryId = currentCategory.value.id
-  listReject(carrierRejectParams.value).then((res) => {
-    carrierRejectLoading.value = false
-    carrierRejectList.value = res.rows
-    carrierRejectTotal.value = res.total
-  })
-}
-
-const handleRefreshCarrier = () => {
-  getCarriersReject()
-}
-
+  carrierRejectLoading.value = true;
+  queryCarrierRejectParams.value.categoryId = currentCategory.value.id;
+  listReject(queryCarrierRejectParams.value).then((res) => {
+    carrierRejectLoading.value = false;
+    carrierRejectList.value = res.rows;
+    carrierRejectTotal.value = res.total;
+  });
+};
+// 载具操作明细搜索
 const handleQueryCarrier = () => {
-  carrierRejectParams.value.pageNum = 1
-  handleRefreshCarrier()
-}
+  queryCarrierRejectParams.value.pageNum = 1;
+  getCarriersReject();
+};
 onMounted(() => {
-  getCategories()
-})
+  getCategories();
+});
 </script>
 <style scoped>
 :deep(.el-tree-node__label) {
-    font-size: 14px !important;
+  font-size: 14px !important;
 }
 :deep(.el-tree-node__content) {
-    height: 40px;
-    border-bottom: 1px solid #ebeef5;
-    padding: 8px 0;
-    line-height: 23px;
+  height: 40px;
+  border-bottom: 1px solid #ebeef5;
+  padding: 8px 0;
+  line-height: 23px;
 }
 </style>

+ 5 - 22
src/views/business/resourcePlan/form.vue

@@ -46,40 +46,32 @@
   import { ref } from 'vue'
   import { listProductionPlanDetailList } from '@/api/business/productionPlanDetail.js'
   const { proxy } = getCurrentInstance()
+  /**生产计划分配弹窗变量  */
   const total = ref(0)
   const props = defineProps({
     multiple: {
       type: Boolean,
       default: false
     },
-    selected: {
-      type: Array,
-      defalut: []
-    },
-    singleSelected: {
-      type: Function,
-      default: null
-    },
     multipleSelected: {
       type: Function,
       default: null
     }
   })
-  
-  const { singleSelected, multipleSelected, selected } = toRefs(props)
+  const { multipleSelected } = toRefs(props)
   const subDetailList = ref([])
   const visible = ref(false)
   const loading = ref(false)
+  const selections = ref([])
+  /**查询对象 */
   const data = reactive({
     queryParams: {
       pageSize: 10,
       pageNum: 1
     }
   })
-  const selections = ref([])
-  const planDetailIds = ref([])
   const { queryParams } = toRefs(data)
-  
+  /***********************  方法区  ****************************/
   /** 获取行 id */
   function getRowKey(row) {
     return row.id
@@ -92,7 +84,6 @@
     queryParams.value.pageNum = 1
     visible.value = true
     if(row) {
-      planDetailIds.value = row.planDetailIds
       queryParams.value.deptId = row.deptId
       queryParams.value.resourceGroupId = row.resourceGroupId
       getList()
@@ -141,14 +132,6 @@
     }
   }
   
-  /** 单选事件 */
-  function handleSingleSelected(row) {
-    if (singleSelected.value) {
-      singleSelected.value(row)
-    }
-    close()
-  }
-  
   /** 多选事件 */
   function handleMultipleSelected() {
     if (multipleSelected.value) {

+ 274 - 136
src/views/business/resourcePlan/index.vue

@@ -6,248 +6,386 @@
       <el-form class="list-search-container" ref="queryRef" :inline="true">
         <el-form-item class="section-title" label="资源组" />
         <el-form-item class="section-title" label="请选择当前工段:">
-          <el-select-v2 v-model="queryParams.deptId" :options="deptList" placeholder="请选择工段" style="width: 100%" @change="handleChangeDeptId" />
+          <el-select-v2
+            v-model="queryParams.deptId"
+            :options="deptList"
+            placeholder="请选择工段"
+            style="width: 100%"
+            @change="handleChangeDeptId"
+          />
         </el-form-item>
         <el-form-item label="资源组名称:">
-          <el-input placeholder="请输入资源组名称"  v-model.trim="queryParams.code" style="width: 150px" clearable  @keydown.enter.prevent  />
+          <el-input
+            placeholder="请输入资源组名称"
+            v-model.trim="queryParams.code"
+            style="width: 150px"
+            clearable
+            @keydown.enter.prevent
+          />
         </el-form-item>
         <el-form-item>
-          <el-button type="info" icon="Search" :disabled="deptList.length === 0"  @click="handleQuery">搜索</el-button>
+          <el-button
+            type="info"
+            icon="Search"
+            :disabled="deptList.length === 0"
+            @click="handleQuery"
+            >搜索</el-button
+          >
         </el-form-item>
       </el-form>
       <div class="el-table-container">
         <div class="el-table-inner-container">
-          <el-table ref="resourceGroupTable" :data="resourceGroupList" v-loading="resourceGroupLoading" highlight-current-row height="100%" @current-change="handleResourceGroupCurrentChange">
-            <el-table-column label="行号" type="index" width="50" align="center" />
-            <el-table-column label="资源组名称" width="70" prop="code" align="center" />
-            <el-table-column label="资源组人员" width="200" prop="nickName" align="center" />
+          <el-table
+            ref="resourceGroupTable"
+            :data="resourceGroupList"
+            v-loading="resourceGroupLoading"
+            highlight-current-row
+            height="100%"
+            @current-change="handleResourceGroupCurrentChange"
+          >
+            <el-table-column
+              label="行号"
+              type="index"
+              width="50"
+              align="center"
+            />
+            <el-table-column
+              label="资源组名称"
+              width="70"
+              prop="code"
+              align="center"
+            />
+            <el-table-column
+              label="资源组人员"
+              width="200"
+              prop="nickName"
+              align="center"
+            />
             <el-table-column label="设备编码" width="120" align="center">
               <template #default="scope">
-                <div v-for="(item,index) in scope.row.groupEquipmentList" :key="index">
-                  <div style="height: auto;">{{item.commonCode}}</div>
+                <div
+                  v-for="(item, index) in scope.row.groupEquipmentList"
+                  :key="index"
+                >
+                  <div style="height: auto">{{ item.commonCode }}</div>
                 </div>
               </template>
             </el-table-column>
             <el-table-column label="设备名称" align="center">
               <template #default="scope">
-                <div v-for="(item,index) in scope.row.groupEquipmentList" :key="index">
-                  <div style="height: auto;">{{item.commonName}}</div>
+                <div
+                  v-for="(item, index) in scope.row.groupEquipmentList"
+                  :key="index"
+                >
+                  <div style="height: auto">{{ item.commonName }}</div>
                 </div>
               </template>
             </el-table-column>
-
           </el-table>
         </div>
       </div>
     </section>
     <!-- 右侧区域 -->
     <section class="list-part-container" style="flex: 2">
-      <el-form class="list-search-container" :inline="true" >
-        <el-form-item class="section-title" label="生产计划" label-width="60px" />
-        <el-form-item label="生产计划信息:" >
-          <el-input v-model.trim="queryItemParams.productionPlanNo"  placeholder="请输入厂家/生产计划单号/产品描述" clearable style="width: 250px"  @keydown.enter.prevent  />
+      <el-form class="list-search-container" :inline="true">
+        <el-form-item
+          class="section-title"
+          label="生产计划"
+          label-width="60px"
+        />
+        <el-form-item label="生产计划信息:">
+          <el-input
+            v-model.trim="queryItemParams.productionPlanNo"
+            placeholder="请输入厂家/生产计划单号/产品描述"
+            clearable
+            style="width: 250px"
+            @keydown.enter.prevent
+          />
         </el-form-item>
-        <el-form-item >
-          <el-button type="info" icon="Search" :disabled="!currentResourceGroup.id" @click="handleQueryPlanDetails">搜索</el-button>
-          <el-button type="primary" icon="Plus" :disabled="!currentResourceGroup.id" @click="handleOpenPlanDetailDialog()">新增</el-button>
-          <el-button type="danger" icon="Delete" :disabled="!currentResourceGroup.id ||planDetailIds.length == 0" @click="handleDeletePlanDetail()">批量删除</el-button>
+        <el-form-item>
+          <el-button
+            type="info"
+            icon="Search"
+            :disabled="!currentResourceGroup.id"
+            @click="handleQueryPlanDetails"
+            >搜索</el-button
+          >
+          <el-button
+            type="primary"
+            icon="Plus"
+            :disabled="!currentResourceGroup.id"
+            @click="handleOpenPlanDetailDialog()"
+            >新增</el-button
+          >
+          <el-button
+            type="danger"
+            icon="Delete"
+            :disabled="!currentResourceGroup.id || planDetailIds.length == 0"
+            @click="handleDeletePlanDetail()"
+            >批量删除</el-button
+          >
         </el-form-item>
-        </el-form>
-        <div class="el-table-container">
-          <div class="el-table-inner-container">
-            <el-table ref="planDetailsTable"  v-loading="planDetailLoading" row-key="id" :data="planDetailList" highlight-current-row height="100%" @selection-change="handleSelectionChange">
-              <el-table-column type="selection" width="40" align="center" />
-              <el-table-column type="index" label="行号" width="50" align="center" />
-              <el-table-column label="厂家" prop="companyAlias" width="150" align="center" />
-              <el-table-column label="生产计划单号" prop="productionPlanNo" width="100" align="center" />
-              <el-table-column label="序号" width="60" prop="lineNumber" align="center" />
-              <el-table-column label="产品描述" prop="productDescription" width="350" align="center" />
-              <el-table-column label="投产日期" prop="issuanceDate" width="100" align="center">
+      </el-form>
+      <div class="el-table-container">
+        <div class="el-table-inner-container">
+          <el-table
+            ref="planDetailsTable"
+            v-loading="planDetailLoading"
+            row-key="id"
+            :data="planDetailList"
+            highlight-current-row
+            height="100%"
+            @selection-change="handleSelectionChange"
+          >
+            <el-table-column type="selection" width="40" align="center" />
+            <el-table-column
+              type="index"
+              label="行号"
+              width="50"
+              align="center"
+            />
+            <el-table-column
+              label="厂家"
+              prop="companyAlias"
+              width="150"
+              align="center"
+            />
+            <el-table-column
+              label="生产计划单号"
+              prop="productionPlanNo"
+              width="100"
+              align="center"
+            />
+            <el-table-column
+              label="序号"
+              width="60"
+              prop="lineNumber"
+              align="center"
+            />
+            <el-table-column
+              label="产品描述"
+              prop="productDescription"
+              width="350"
+              align="center"
+            />
+            <el-table-column
+              label="投产日期"
+              prop="issuanceDate"
+              width="100"
+              align="center"
+            >
               <template #default="scope">
                 <span>{{
                   proxy.moment(scope.row.issuanceDate).format("YYYY-MM-DD")
                 }}</span>
               </template>
-        </el-table-column>
-        <el-table-column label="批次数" prop="lotTotalNumber" width="70" align="center" ></el-table-column>
-              <el-table-column fixed="right" label="操作" width="80" align="center">
-                <template #default="scope">
-                  <el-button  icon="delete" link type="danger" @click="handleDelPlanDetail(scope.row)">删除
-                  </el-button>
-                </template>
-              </el-table-column>
-            </el-table>
-          </div>
+            </el-table-column>
+            <el-table-column
+              label="批次数"
+              prop="lotTotalNumber"
+              width="70"
+              align="center"
+            ></el-table-column>
+            <el-table-column
+              fixed="right"
+              label="操作"
+              width="80"
+              align="center"
+            >
+              <template #default="scope">
+                <el-button
+                  icon="delete"
+                  link
+                  type="danger"
+                  @click="handleDelPlanDetail(scope.row)"
+                  >删除
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
         </div>
-        <!-- 分页 -->
-        <pagination v-show="itemTotal > 0" :total="itemTotal" v-model:page="queryItemParams.pageNum" v-model:limit="queryItemParams.pageSize" @pagination="getPlanDetail" />
-      </section>
-        <!-- 表单 -->
-    <plan-detail-form ref="planDetailRef"  :multiple-selected="handlePlanDetailSelected"></plan-detail-form>
-    </div>
-  </template>
+      </div>
+      <!-- 分页 -->
+      <pagination
+        v-show="itemTotal > 0"
+        :total="itemTotal"
+        v-model:page="queryItemParams.pageNum"
+        v-model:limit="queryItemParams.pageSize"
+        @pagination="getPlanDetail"
+      />
+    </section>
+    <!-- 生产计划分配弹窗 -->
+    <plan-detail-dialog
+      ref="planDetailRef"
+      :multiple-selected="handlePlanDetailSelected"
+    ></plan-detail-dialog>
+  </div>
+</template>
   
   <script setup>
-import { listResourceGroup } from '@/api/business/resourceGroup.js'
-import { listResourcePlan, saveBatchResourcePlan, delResourcePlan } from '@/api/business/resourcePlan.js'
-import { getDept } from '@/api/business/planDetailSubDetail.js'
-import planDetailForm from './form'
-import { ref } from 'vue'
-const { proxy } = getCurrentInstance()
+import { listResourceGroup } from "@/api/business/resourceGroup.js";
+import {
+  listResourcePlan,
+  saveBatchResourcePlan,
+  delResourcePlan,
+} from "@/api/business/resourcePlan.js";
+import { getDept } from "@/api/business/planDetailSubDetail.js";
+import planDetailDialog from "./form";
+import { ref } from "vue";
+const { proxy } = getCurrentInstance();
 
 /**资源组*/
-const resourceGroupList = ref([])
-const resourceGroupLoading = ref(false)
+const resourceGroupList = ref([]);
+const resourceGroupLoading = ref(false);
 
 /** 生产计划 */
-const planDetailList = ref([])
-const planDetailLoading = ref(false)
-const planDetailIds = ref([])
-const currentResourceGroup = ref({})
-const itemTotal = ref(0)
+const planDetailList = ref([]);
+const planDetailLoading = ref(false);
+const planDetailIds = ref([]);
+const currentResourceGroup = ref({});
+const itemTotal = ref(0);
 /**当前工段列表 */
-const deptList = ref([])
-const loading = ref(false)
+const deptList = ref([]);
+const loading = ref(false);
 
 /** 查询对象 */
 const queryItemParams = ref({
-  resourceGroupId: '',
-  deptId: '',
+  resourceGroupId: "",
+  deptId: "",
   pageNum: 1,
-  pageSize: 10
-})
+  pageSize: 10,
+});
 const queryParams = ref({
-  resourceGroupId: '',
+  resourceGroupId: "",
   deptId: null,
   pageNum: 1,
-  pageSize: 10
-})
+  pageSize: 10,
+});
 
 /***********************  方法区  ****************************/
+/***********************  工段相关事件 ****************************/
 /**
  * 查询生产批次列表
  * 由于生产计划批次列表是根据首序进行投产,所以不需要今天部门的获取
  *
  */
 function getList() {
-  loading.value = true
+  loading.value = true;
   getDept().then((response) => {
-    deptList.value = response.data
+    deptList.value = response.data;
     if (deptList.value.length > 0) {
-      queryParams.value.deptId = deptList.value[0].value
-      getResourceGroup()
+      queryParams.value.deptId = deptList.value[0].value;
+      getResourceGroup();
     }
-  })
-  loading.value = false
+  });
+  loading.value = false;
 }
 /**选择工段 */
 function handleChangeDeptId(row) {
-  queryParams.value.deptId = row
-  getResourceGroup()
+  queryParams.value.deptId = row;
+  getResourceGroup();
 }
-
+/***********************  资源组相关事件  ****************************/
 /** 查询资源组明细 */
 function getResourceGroup() {
-  resourceGroupLoading.value = true
+  resourceGroupLoading.value = true;
   listResourceGroup(queryParams.value).then((res) => {
-    resourceGroupList.value = res.rows
-    resourceGroupLoading.value = false
+    resourceGroupList.value = res.rows;
+    resourceGroupLoading.value = false;
     if (resourceGroupList.value.length > 0) {
-      proxy.$refs.resourceGroupTable.setCurrentRow(resourceGroupList.value[0])
+      proxy.$refs.resourceGroupTable.setCurrentRow(resourceGroupList.value[0]);
     }
-  })
-}
-
-/** 查询生产计划详情列表 */
-const getPlanDetail = () => {
-  planDetailLoading.value = true
-  listResourcePlan(queryItemParams.value).then((res) => {
-    planDetailList.value = res.rows
-    itemTotal.value = res.total
-    planDetailLoading.value = false
-  })
-}
-
-/**查询生产计划 */
-function handleQueryPlanDetails () {
-  getPlanDetail()
+  });
 }
 /**查询资源组 */
 function handleQuery() {
-  getResourceGroup()
+  getResourceGroup();
 }
-
 /** 资源组 current-change 事件 */
 function handleResourceGroupCurrentChange(row) {
   if (row) {
-    currentResourceGroup.value = row
-    queryItemParams.value.resourceGroupId = currentResourceGroup.value.id
-    getPlanDetail()
+    currentResourceGroup.value = row;
+    queryItemParams.value.resourceGroupId = currentResourceGroup.value.id;
+    getPlanDetail();
   } else {
-    planDetailList.value = []
+    planDetailList.value = [];
   }
 }
+/***********************  生产计划相关事件  ****************************/
+/** 查询生产计划详情列表 */
+const getPlanDetail = () => {
+  planDetailLoading.value = true;
+  listResourcePlan(queryItemParams.value).then((res) => {
+    planDetailList.value = res.rows;
+    itemTotal.value = res.total;
+    planDetailLoading.value = false;
+  });
+};
 
+/**查询生产计划 */
+function handleQueryPlanDetails() {
+  getPlanDetail();
+}
 /** 新增生产子计划 */
 function handleOpenPlanDetailDialog() {
-  var info = {}
-  info.resourceGroupId = currentResourceGroup.value.id
-  info.deptId = queryParams.value.deptId
-  proxy.$refs.planDetailRef.open(info)
+  var info = {};
+  info.resourceGroupId = currentResourceGroup.value.id;
+  info.deptId = queryParams.value.deptId;
+  proxy.$refs.planDetailRef.open(info);
 }
 /** 生产计划批量删除*/
-  function handleSelectionChange(selection) {
-  planDetailIds.value = selection.map((item) => item.id)
+function handleSelectionChange(selection) {
+  planDetailIds.value = selection.map((item) => item.id);
 }
 /**多选删除生产计划 */
-  function handleDeletePlanDetail() {
-    proxy.$modal
-    .confirm('是否确认删除选中的数据项?')
+function handleDeletePlanDetail() {
+  proxy.$modal
+    .confirm("是否确认删除选中的数据项?")
     .then(function () {
       delResourcePlan(planDetailIds.value).then((res) => {
-        getPlanDetail()
-        proxy.$modal.msgSuccess('删除成功!')
-      })
+        getPlanDetail();
+        proxy.$modal.msgSuccess("删除成功!");
+      });
     })
-    .catch(() => {})
+    .catch(() => {});
 }
 
 /** 生产计划带回 */
 function handlePlanDetailSelected(selection) {
-  var planDetail = []
+  var planDetail = [];
   for (var i = 0; i < selection.length; i++) {
-    var planDetailInfo = {}
-    planDetailInfo.productionPlanDetailId = selection[i].id
-    planDetailInfo.productId = selection[i].productId
-    planDetailInfo.technologicalProcessId = selection[i].technologicalProcessId
-    planDetailInfo.resourceGroupId = currentResourceGroup.value.id
-    planDetailInfo.resourceGroupCode = currentResourceGroup.value.code
-    planDetail.push(planDetailInfo)
+    var planDetailInfo = {};
+    planDetailInfo.productionPlanDetailId = selection[i].id;
+    planDetailInfo.productId = selection[i].productId;
+    planDetailInfo.technologicalProcessId = selection[i].technologicalProcessId;
+    planDetailInfo.resourceGroupId = currentResourceGroup.value.id;
+    planDetailInfo.resourceGroupCode = currentResourceGroup.value.code;
+    planDetail.push(planDetailInfo);
   }
   saveBatchResourcePlan(planDetail).then((res) => {
     if (res.code === 200) {
-      getPlanDetail()
-      proxy.$modal.msgSuccess('保存成功')
+      getPlanDetail();
+      proxy.$modal.msgSuccess("保存成功");
     }
-  })
+  });
 }
 
 /**生产计划删除 */
 function handleDelPlanDetail(row) {
   proxy.$modal
-    .confirm('是否确认删除选中的数据项?')
+    .confirm("是否确认删除选中的数据项?")
     .then(function () {
       delResourcePlan(row.id).then((res) => {
-        getPlanDetail()
-        proxy.$modal.msgSuccess('删除成功!')
-      })
+        getPlanDetail();
+        proxy.$modal.msgSuccess("删除成功!");
+      });
     })
-    .catch(() => {})
+    .catch(() => {});
 }
 
 onMounted(() => {
-  getList()
-})
+  getList();
+});
 </script>
   <style scoped></style>
   

+ 0 - 3
src/views/business/tenant/form.vue

@@ -38,8 +38,6 @@
 import { getTenant, saveTenant } from '@/api/business/tenant'
 const { proxy } = getCurrentInstance()
 const emit = defineEmits(['handleSaveSuccess'])
-
-/** 字典数组区 */
 /** 表单抽屉 页变量 */
 const loading = ref(false)
 const visible = ref(false)
@@ -84,7 +82,6 @@ function reset() {
 function handleSave() {
   proxy.$refs['tenantRef'].validate((valid) => {
     if (valid) {
-      console.log(form.value)
       saveTenant(form.value).then((res) => {
         if (res.code == 200) {
           proxy.$modal.msgSuccess('操作成功')

+ 2 - 6
src/views/business/tenant/index.vue

@@ -8,7 +8,6 @@
       </el-form-item>
       <el-form-item>
         <el-button type="info" icon="Search" @click="handleQuery">搜索</el-button>
-        <!-- <el-button icon="Refresh" @click="resetQuery">重置</el-button> -->
         <el-button type="primary" icon="Plus" @click="handleShowFormDialog(null)" v-hasPermi="['business:tenant:add']">新增</el-button>
       </el-form-item>
     </el-form>
@@ -23,7 +22,6 @@
             </template>
           </el-table-column>
           <el-table-column label="企业名称" align="center" prop="orgName" />
-
           <el-table-column label="操作" align="center" width="140">
             <template #default="scope">
               <el-button link type="warning" icon="Edit" @click="handleShowFormDialog(scope.row.id)" v-hasPermi="['business:tenant:edit']">
@@ -37,7 +35,7 @@
     </div>
     <!-- 分页 -->
     <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
-    <!-- 表单 -->
+    <!-- 厂别表单 -->
     <tenant-form ref="tenantRef" @handleSaveSuccess="getList" />
   </div>
 </template>
@@ -46,9 +44,7 @@
 import tenantForm from './form.vue'
 import { listTenant, delTenant } from '@/api/business/tenant'
 const { proxy } = getCurrentInstance()
-/** 字典数组区 */
-const { org_nature } = proxy.useDict('org_nature')
-
+/**厂别变量 */
 const tenantList = ref([])
 const loading = ref(true)
 const total = ref(0)

+ 68 - 48
src/views/business/turnover/form.vue

@@ -1,14 +1,32 @@
 <template>
   <!-- 添加或修改项目信息对话框 -->
-  <el-dialog title="周转区信息表单" v-model="visible" width="400px" append-to-body draggable>
+  <el-dialog
+    title="周转区信息表单"
+    v-model="visible"
+    width="400px"
+    append-to-body
+    draggable
+  >
     <div class="form-container">
-      <el-form ref="turnoverFormRef" class="master-container" :rules="rules" v-loading="loading" :model="form" label-width="100px">
-        <el-form-item label="周转区名称" prop="code" >
+      <el-form
+        ref="turnoverFormRef"
+        class="master-container"
+        :rules="rules"
+        v-loading="loading"
+        :model="form"
+        label-width="100px"
+      >
+        <el-form-item label="周转区名称" prop="code">
           <el-input v-model.trim="form.code" placeholder="请输入周转区名称" />
         </el-form-item>
         <el-form-item label="状态" prop="status">
           <el-select v-model="form.status" placeholder="请选择周转区状态">
-            <el-option v-for="item in turnover_status" :key="item.value" :label="item.label" :value="item.value" />
+            <el-option
+              v-for="item in turnover_status"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            />
           </el-select>
         </el-form-item>
         <el-form-item label="备注" prop="remark">
@@ -17,20 +35,23 @@
       </el-form>
     </div>
     <template #footer>
-      <el-button type="primary" icon="Check" @click="handleSave">确 定</el-button>
+      <el-button type="primary" icon="Check" @click="handleSave"
+        >确 定</el-button
+      >
       <el-button icon="Close" @click="handleCancel">取 消</el-button>
     </template>
   </el-dialog>
 </template>
 <script setup>
-import { getTurnover, saveTurnover } from '@/api/business/turnover'
-const { proxy } = getCurrentInstance()
-const emit = defineEmits(['handleSaveSuccess'])
-const { turnover_status } = proxy.useDict('turnover_status')
-
-const loading = ref(false)
-const visible = ref(false)
-const form = ref({})
+import { getTurnover, saveTurnover } from "@/api/business/turnover";
+const { proxy } = getCurrentInstance();
+const emit = defineEmits(["handleSaveSuccess"]);
+/** 字典数组区 */
+const { turnover_status } = proxy.useDict("turnover_status");
+/**周转区表单变量 */
+const loading = ref(false);
+const visible = ref(false);
+const form = ref({});
 const rules = {
   code: [{ required: true, trigger: "blur", message: "周转区名称不能为空" }],
 };
@@ -38,59 +59,58 @@ const rules = {
 /***********************  方法区  ****************************/
 /** 打开抽屉 */
 const open = (data) => {
-  reset()
-  visible.value = true
-  loading.value = true
-  form.value.deptId = data.deptId
-  console.log(data)
+  reset();
+  visible.value = true;
+  loading.value = true;
+  form.value.deptId = data.deptId;
   getTurnover(data.id || 0).then((res) => {
     if (res.data) {
-      form.value = res.data
-      form.value.status = res.data.status + ''
+      form.value = res.data;
+      form.value.status = res.data.status + "";
     }
-    loading.value = false
-  })
-}
+    loading.value = false;
+  });
+};
 
 /** 表单重置 */
 const reset = () => {
   form.value = {
     id: null,
     deptId: 0,
-    code: '',
-    status: '0',
-    remark: ''
-  }
-  proxy.resetForm('turnoverFormRef')
-}
+    code: "",
+    status: "0",
+    remark: "",
+  };
+  proxy.resetForm("turnoverFormRef");
+};
 
 /** 提交按钮 */
 const handleSave = () => {
-  proxy.$refs['turnoverFormRef'].validate((valid) => {
+  proxy.$refs["turnoverFormRef"].validate((valid) => {
     if (valid) {
-  saveTurnover(form.value).then((res) => {
-    if (res.code === 601) {
-      proxy.$modal.msgWarn(res.msg)
-      return
+      saveTurnover(form.value).then((res) => {
+        if (res.code === 601) {
+          proxy.$modal.msgWarn(res.msg);
+          return;
+        }
+        if (res.code === 200) {
+          proxy.$modal.msgSuccess("操作成功");
+          emit("handleSaveSuccess");
+        }
+        visible.value = false;
+      });
     }
-    if (res.code === 200) {
-      proxy.$modal.msgSuccess('操作成功')
-      emit('handleSaveSuccess')
-    }
-    visible.value = false
-  })
-}
-  })
-}
+  });
+};
 
 /** 取消按钮 */
 const handleCancel = () => {
-  visible.value = false
-  reset()
-}
+  visible.value = false;
+  reset();
+};
 
 /** 暴露给父组件的方法 */
 defineExpose({
-  open
-})
+  open,
+});
 </script>

+ 12 - 10
src/views/business/turnover/index.vue

@@ -6,13 +6,13 @@
       <el-form class="list-search-container" style="display: flex">
         <el-form-item class="section-title" label="工段列表"  />
         <el-form-item label="工段编码:" prop="deptCode" style="margin-left: 30px;">
-          <el-input v-model.trim="queryParams.deptCode" placeholder="请输入工段编码" clearable style="width: 160px" @keyup.enter="handleQueryUser" />
+          <el-input v-model.trim="queryParams.deptCode" placeholder="请输入工段编码" clearable style="width: 160px" @keyup.enter="handleQueryDept" />
         </el-form-item>
         <el-form-item label="工段名称:" prop="deptName">
-          <el-input v-model.trim="queryParams.deptName" placeholder="请输入工段名称" clearable style="width: 160px" @keyup.enter="handleQueryUser" />
+          <el-input v-model.trim="queryParams.deptName" placeholder="请输入工段名称" clearable style="width: 160px" @keyup.enter="handleQueryDept" />
         </el-form-item>
         <el-form-item>
-          <el-button type="info" icon="Search" @click="handleQueryUser">搜索</el-button>
+          <el-button type="info" icon="Search" @click="handleQueryDept">搜索</el-button>
         </el-form-item>
       </el-form>
       <!-- 列表区 -->
@@ -72,16 +72,17 @@
 import { workSectionTree } from '@/api/system/dept'
 import { listTurnover, delTurnover } from '@/api/business/turnover'
 import turnoverForm from './form'
-import { get } from '@vueuse/core'
 const { proxy } = getCurrentInstance()
+/** 字典数组区 */
 const { turnover_status } = proxy.useDict('turnover_status')
 
-/** 查询 对象 */
+/** 工段变量 */
 const workSectionList = ref([])
-const turnoverList = ref([])
 const workSectionLoading = ref(false)
-const turnoverLoading = ref(false)
 const currentWorkSection = ref({})
+/**周转变量 */
+const turnoverList = ref([])
+const turnoverLoading = ref(false)
 const ids = ref([])
 /** 查询对象 */
 const queryParams = ref({
@@ -105,19 +106,20 @@ function getWorkSections() {
     workSectionLoading.value = false
   })
 }
-
+// 工段列表点击事件
 const handleWorkSectionChange = (row) => {
   if (row) {
     currentWorkSection.value = row
     getTurnovers()
   }
 }
-function handleQueryUser() {
-  console.log(queryParams.value)
+//工段列表查询
+function handleQueryDept() {
   getWorkSections()
 }
 
 /****************************  周转区方法区  ****************************/
+//获得周转位置
 const getTurnovers = () => {
   turnoverLoading.value = true
   listTurnover({ deptId: currentWorkSection.value.id ?? '0' }).then((res) => {

+ 6 - 9
src/views/business/workshop/DialogDept.vue

@@ -100,32 +100,31 @@
 <script setup>
 import { getDeptInfo } from "@/api/system/dept.js"
 const { proxy } = getCurrentInstance();
+/**工段弹窗变量 */
 const total = ref(0);
 const props = defineProps({
-  selected: {
-    type: Array,
-    defalut: [],
-  },
   multipleSelected: {
     type: Function,
     default: null,
   },
 });
 
-const { multipleSelected, selected } = toRefs(props);
+const { multipleSelected } = toRefs(props);
 const deptList = ref([]);
+const selections = ref([]);
 const visible = ref(false);
 const deptIds = ref([])
 const loading = ref(false);
+/**查询对象 */
 const data = reactive({
   queryParams: {
     pageSize: 10,
     pageNum: 1,
   },
 });
-const selections = ref([]);
-const { queryParams } = toRefs(data);
 
+const { queryParams } = toRefs(data);
+/***********************  方法区  ****************************/
 /** 获取行 id */
 function getRowKey(row) {
   return row.deptId;
@@ -167,7 +166,6 @@ function getList() {
  * 列表checkbox列选择 事件
  */
 function handleSelectionChange(selection) {
-  console.log(selection);
   selections.value = selection;
 }
 
@@ -197,4 +195,3 @@ defineExpose({
   open,
 });
 </script>
-<style scoped></style>

+ 0 - 2
src/views/business/workshop/form.vue

@@ -34,10 +34,8 @@ import {getWorkshop, addWorkshop, updateWorkshop} from "@/api/business/workshop"
 
 const {proxy} = getCurrentInstance();
 const emit = defineEmits(["handleSaveSuccess"]);
-/** 字典数组区 */
 /** 表单抽屉 页变量 */
 const visible = ref(false);
-const deptOptions = ref([]);
 const data = reactive({
   form: {},
   rules: {

+ 212 - 127
src/views/business/workshop/index.vue

@@ -3,29 +3,72 @@
     <!-- 左侧区域 -->
     <section class="list-part-container" style="flex: 2">
       <!-- 搜索区 -->
-      <el-form class="list-search-container" :model="queryDeptParams" ref="queryRef" :inline="true">
+      <el-form
+        class="list-search-container"
+        :model="queryDeptParams"
+        ref="queryRef"
+        :inline="true"
+      >
         <el-form-item class="section-title" label="车间管理" />
         <el-form-item>
-          <el-button type="primary" icon="Plus" @click="handleAdd">新增</el-button>
+          <el-button type="primary" icon="Plus" @click="handleAdd"
+            >新增</el-button
+          >
         </el-form-item>
         <el-form-item label="车间名称:" prop="name">
-          <el-input v-model.trim="queryParams.name" placeholder="请输入车间名称" @keydown.enter.prevent @keyup.enter="handleSearch" clearable style="width: 155px" />
+          <el-input
+            v-model.trim="queryParams.name"
+            placeholder="请输入车间名称"
+            @keydown.enter.prevent
+            @keyup.enter="handleSearch"
+            clearable
+            style="width: 155px"
+          />
         </el-form-item>
         <el-form-item>
-          <el-button type="info" icon="Search" @click="handleSearch">搜索</el-button>
+          <el-button type="info" icon="Search" @click="handleSearch"
+            >搜索</el-button
+          >
         </el-form-item>
       </el-form>
       <!-- 列表区 -->
       <div class="el-table-container">
         <div class="el-table-inner-container">
           <!-- 列表区 -->
-          <el-table ref="workshopTable" v-loading="loading" :data="workshopList" row-key="id" height="100%" :indent="20" default-expand-all highlight-current-row @current-change="handleGetDept">
-            <el-table-column label="行号" type="index" width="50" align="center" />
+          <el-table
+            ref="workshopTable"
+            v-loading="loading"
+            :data="workshopList"
+            row-key="id"
+            height="100%"
+            :indent="20"
+            default-expand-all
+            highlight-current-row
+            @current-change="handleGetDept"
+          >
+            <el-table-column
+              label="行号"
+              type="index"
+              width="50"
+              align="center"
+            />
             <el-table-column label="车间名称" prop="name" align="center" />
             <el-table-column label="操作" width="150" align="center">
               <template #default="scope">
-                <el-button link type="warning" icon="Edit" @click="handleUpdateWorkshop(scope.row)">编辑</el-button>
-                <el-button link type="danger" icon="Delete" @click="handleDeleteWorkshop(scope.row)">删除</el-button>
+                <el-button
+                  link
+                  type="warning"
+                  icon="Edit"
+                  @click="handleUpdateWorkshop(scope.row)"
+                  >编辑</el-button
+                >
+                <el-button
+                  link
+                  type="danger"
+                  icon="Delete"
+                  @click="handleDeleteWorkshop(scope.row)"
+                  >删除</el-button
+                >
               </template>
             </el-table-column>
           </el-table>
@@ -36,189 +79,231 @@
     <!-- 右侧区域 -->
     <section class="list-part-container" style="flex: 3">
       <!-- 搜索区 -->
-      <el-form class="list-search-container" :model="queryDeptParams" ref="queryRef" :inline="true">
+      <el-form
+        class="list-search-container"
+        :model="queryDeptParams"
+        ref="queryRef"
+        :inline="true"
+      >
         <el-form-item class="section-title" label="工段" />
         <el-form-item>
-          <el-button type="primary" icon="Plus" :disabled="workshopList.length == 0" @click="handleAddDept">新增</el-button>
-          <el-button type="danger" icon="Delete" :disabled="ids.length == 0" @click="handleDeptDelete">
-            删除</el-button>
+          <el-button
+            type="primary"
+            icon="Plus"
+            :disabled="workshopList.length == 0"
+            @click="handleAddDept"
+            >新增</el-button
+          >
+          <el-button
+            type="danger"
+            icon="Delete"
+            :disabled="ids.length == 0"
+            @click="handleDeptDelete"
+          >
+            删除</el-button
+          >
         </el-form-item>
       </el-form>
 
       <!-- 列表区 -->
       <div class="el-table-container">
         <div class="el-table-inner-container">
-          <el-table v-loading="deptLoading" :data="deptList" :row-key="getRowKey" height="100%" @selection-change="handleSelectionChange">
+          <el-table
+            v-loading="deptLoading"
+            :data="deptList"
+            :row-key="getRowKey"
+            height="100%"
+            @selection-change="handleSelectionChange"
+          >
             <el-table-column type="selection" width="40" align="center" />
-            <el-table-column type="index" label="行号" width="50" align="center" />
+            <el-table-column
+              type="index"
+              label="行号"
+              width="50"
+              align="center"
+            />
             <el-table-column label="工段名称" prop="deptName" align="center" />
             <el-table-column label="工段编码" prop="deptCode" align="center" />
           </el-table>
         </div>
       </div>
       <!-- 分页 -->
-      <pagination v-show="total > 0" :total="total" v-model:page="queryDeptParams.pageNum" v-model:limit="queryDeptParams.pageSize" @pagination="getdeptList" />
+      <pagination
+        v-show="total > 0"
+        :total="total"
+        v-model:page="queryDeptParams.pageNum"
+        v-model:limit="queryDeptParams.pageSize"
+        @pagination="getdeptList"
+      />
     </section>
 
-    <!-- 表单 -->
+    <!-- 车间管理表单 -->
     <workshop-form ref="workshopRef" @handleSaveSuccess="getList" />
-    <dept-form ref="deptChoiceRef" :multiple="true" :multiple-selected="handleDeptSelected" />
+    <!-- 工段弹窗 -->
+    <dept-form
+      ref="deptChoiceRef"
+      :multiple="true"
+      :multiple-selected="handleDeptSelected"
+    />
   </div>
 </template>
 <script setup >
-import { listWorkshop, delWorkshop } from '@/api/business/workshop'
-import { listDept, updateDeptWorkshop, updateDeptWorkshopByDeptId } from '@/api/system/dept'
-import deptForm from '@/views/business/workshop/DialogDept'
-import workshopForm from './form'
-const { proxy } = getCurrentInstance()
-
-const workshopList = ref([])
-const deptList = ref([])
-const loading = ref(false)
-const deptLoading = ref(false)
-const currentWorkshop = ref({})
-const total = ref(0)
-const ids = ref([])
-const workshopIds = ref([])
+import { listWorkshop, delWorkshop } from "@/api/business/workshop";
+import {
+  listDept,
+  updateDeptWorkshop,
+  updateDeptWorkshopByDeptId,
+} from "@/api/system/dept";
+import deptForm from "@/views/business/workshop/DialogDept";
+import workshopForm from "./form";
+const { proxy } = getCurrentInstance();
+/**车间管理变量 */
+const workshopList = ref([]);
+const loading = ref(false);
+const currentWorkshop = ref({});
+/**工段变量 */
+const deptList = ref([]);
+const deptLoading = ref(false);
+const total = ref(0);
+const ids = ref([]);
 /** 查询对象 */
 const queryParams = ref({
-  name: ''
-})
+  name: "",
+});
 const queryDeptParams = ref({
-  pageSize : 10,
+  pageSize: 10,
   pageNum: 1,
-  deptCode: ''
-})
+  deptCode: "",
+});
 
 /***********************  方法区  ****************************/
-
+/***********************  车间管理事件  ****************************/
 /** 查询车间管理列表 */
 function getList() {
-  loading.value = true
-  currentWorkshop.value = {}
+  loading.value = true;
+  currentWorkshop.value = {};
   listWorkshop(queryParams.value).then((res) => {
     if (res.code == 200) {
-      workshopList.value = res.rows
-      loading.value = false
-      console.log(workshopList.value.length)
-      if (workshopList.value.length >0) {
-        currentWorkshop.value = workshopList.value[0]
-        proxy.$refs.workshopTable.setCurrentRow(workshopList.value[0])
+      workshopList.value = res.rows;
+      loading.value = false;
+      if (workshopList.value.length > 0) {
+        currentWorkshop.value = workshopList.value[0];
+        proxy.$refs.workshopTable.setCurrentRow(workshopList.value[0]);
       } else {
-        deptList.value = []
-        total.value = 0
+        deptList.value = [];
+        total.value = 0;
       }
     }
-  })
-  
+  });
 }
+/**车间查询 */
 function handleSearch() {
-  getList()
+  getList();
+}
+/** 车间新增按钮操作 */
+function handleAdd() {
+  proxy.$refs.workshopRef.open();
+}
+
+/** 修改按钮操作 */
+function handleUpdateWorkshop(row) {
+  proxy.$refs.workshopRef.open(row);
 }
 
+/**车间表点击事件 */
+function handleGetDept(row) {
+  if (row) {
+    currentWorkshop.value = row;
+  }
+  getdeptList();
+}
+/** 车间删除按钮操作 */
+function handleDeleteWorkshop(row) {
+  const _ids = row.id;
+  proxy.$modal
+    .confirm("是否确认删除选中的车间?")
+    .then(function () {
+      return delWorkshop(_ids);
+    })
+    //删除车间的同时删除工段上workId
+    .then(function () {
+      return updateDeptWorkshopByDeptId({ workshopId: _ids });
+    })
+    .then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功!");
+    })
+    .catch(() => {});
+}
+/***********************  工段相关事件  ****************************/
 //打开添加工段
 const handleAddDept = () => {
-  handleAddBatchDept()
-}
+  handleAddBatchDept();
+};
 /** 多选添加 */
 function handleAddBatchDept() {
-  let deptIds = []
+  let deptIds = [];
   deptIds = deptList.value.map((item) => {
-    return item.deptId
-  })
-  proxy.$refs.deptChoiceRef.open(deptIds)
+    return item.deptId;
+  });
+  proxy.$refs.deptChoiceRef.open(deptIds);
 }
 
-// 多选框选中数据
+// 工段多选框选中数据
 function handleSelectionChange(selection) {
   ids.value = selection.map((item) => {
-    return item.deptId
-  })
-  console.log(ids.value)
+    return item.deptId;
+  });
 }
 /** 获取行 id */
 function getRowKey(row) {
-  return row.deptId
-}
-/** 新增按钮操作 */
-function handleAdd() {
-  proxy.$refs.workshopRef.open()
-}
-
-/** 修改按钮操作 */
-function handleUpdateWorkshop(row) {
-  proxy.$refs.workshopRef.open(row)
+  return row.deptId;
 }
 
-/**车间表点击事件 */
-function handleGetDept(row) {
-  if (row) {
-    currentWorkshop.value = row
-  }
-  getdeptList()
-}
 //工段多选带回
 function handleDeptSelected(selection) {
-  let deptInfo = {}
-  let deptIds = []
+  let deptInfo = {};
+  let deptIds = [];
   deptIds = selection.map((item) => {
-    return item.deptId
-  })
-  deptInfo.workshopId = currentWorkshop.value.id
-  deptInfo.ids = deptIds
-  console.log(deptInfo)
+    return item.deptId;
+  });
+  deptInfo.workshopId = currentWorkshop.value.id;
+  deptInfo.ids = deptIds;
   updateDeptWorkshop(deptInfo).then((res) => {
     if (res.code == 200) {
-      handleGetDept(currentWorkshop.value)
-      proxy.$modal.msgSuccess('添加成功!')
+      handleGetDept(currentWorkshop.value);
+      proxy.$modal.msgSuccess("添加成功!");
     }
-  })
+  });
 }
+/**获得工段列表 */
 function getdeptList() {
-  deptLoading.value = true
-  queryDeptParams.value.workshopId = currentWorkshop.value.id
-  console.log(total.value)
-  if(currentWorkshop.value.id) {
-  listDept(queryDeptParams.value).then((res) => {
-    if (res.code == 200) {
-      deptList.value = res.rows
-      total.value = res.total
-    }
-  })
-}
-deptLoading.value = false
-}
-
-/** 删除按钮操作 */
-function handleDeleteWorkshop(row) {
-  const _ids = row.id
-  proxy.$modal
-    .confirm('是否确认删除选中的车间?')
-    .then(function () {
-      return delWorkshop(_ids)
-    })
-    //删除车间的同时删除工段上workId
-    .then(function () {
-      return updateDeptWorkshopByDeptId({ workshopId: _ids })
-    })
-    .then(() => {
-      getList()
-      proxy.$modal.msgSuccess('删除成功!')
-    })
-    .catch(() => {})
+  deptLoading.value = true;
+  queryDeptParams.value.workshopId = currentWorkshop.value.id;
+  if (currentWorkshop.value.id) {
+    listDept(queryDeptParams.value).then((res) => {
+      if (res.code == 200) {
+        deptList.value = res.rows;
+        total.value = res.total;
+      }
+    });
+  }
+  deptLoading.value = false;
 }
 /** 车间工段删除按钮操作 */
-function handleDeptDelete(row) {
-  updateDeptWorkshop({ ids: ids.value }).then((res) => {
-    if (res.code == 200) {
-      handleGetDept(currentWorkshop.value)
-      proxy.$modal.msgSuccess('删除成功!')
-    }
-  })
+function handleDeptDelete() {
+  proxy.$modal.confirm("是否确认删除选中的车间?").then(function () {
+    updateDeptWorkshop({ ids: ids.value }).then((res) => {
+      if (res.code == 200) {
+        handleGetDept(currentWorkshop.value);
+        proxy.$modal.msgSuccess("删除成功!");
+      }
+    });
+  });
 }
 
 onMounted(() => {
-  getList()
-})
+  getList();
+});
 </script>