Selaa lähdekoodia

Merge remote-tracking branch 'origin/dev' into dev

qinbai 3 vuotta sitten
vanhempi
commit
81b72ecc09
24 muutettua tiedostoa jossa 1099 lisäystä ja 650 poistoa
  1. 11 0
      src/api/basicData/facultyManagement.js
  2. 9 1
      src/api/basicData/salesContract.js
  3. 8 0
      src/api/exportTrade/purchaseContract.js
  4. 10 4
      src/components/costBreakdown/config/feeList.json
  5. 1 0
      src/components/costBreakdown/costBreakdown.vue
  6. 15 8
      src/components/fee-info/config/feeInfo.json
  7. 10 2
      src/components/fee-info/main.vue
  8. 32 17
      src/components/finance/financialAccount.vue
  9. 123 122
      src/page/index/tags.vue
  10. 11 4
      src/views/basicData/basicFeesDesc/configuration/mainList.json
  11. 124 322
      src/views/basicData/facultyManagement/detailsPage.vue
  12. 99 37
      src/views/basicData/facultyManagement/index.vue
  13. 33 10
      src/views/businessManagement/deliveryNotice/detailsPageEdit.vue
  14. 18 10
      src/views/businessManagement/purchaseOrder/configuration/mainList.json
  15. 52 6
      src/views/businessManagement/purchaseOrder/detailsPageEdit.vue
  16. 9 3
      src/views/businessManagement/purchaseOrder/index.vue
  17. 23 19
      src/views/businessManagement/receipt/detailsPageEdit.vue
  18. 15 0
      src/views/businessManagement/salesOrder/configuration/customerContact.json
  19. 76 14
      src/views/businessManagement/salesOrder/detailsPageEdit.vue
  20. 1 1
      src/views/exportTrade/customerInquiry/config/customerContact.json
  21. 102 30
      src/views/exportTrade/purchaseContract/detailsPage.vue
  22. 103 5
      src/views/exportTrade/salesContract/detailsPage.vue
  23. 212 33
      src/views/salaryManagement/primarySchool/detailsPage.vue
  24. 2 2
      src/views/salaryManagement/primarySchool/index.vue

+ 11 - 0
src/api/basicData/facultyManagement.js

@@ -33,4 +33,15 @@ export function remove(data) {
       ids: data
     }
   })
+}
+
+//明细删除
+export function delItem(data) {
+  return request({
+    url: '/api/blade-client/schoolteachercause/remove',
+    method: 'post',
+    params: {
+      ids: data
+    }
+  })
 }

+ 9 - 1
src/api/basicData/salesContract.js

@@ -131,4 +131,12 @@ export function getPricedetail(query) {
     method: 'get',
     params:query
   })
-}
+}
+// 请核
+export function pleaseCheck(data) {
+  return request({
+    url: '/api/blade-purchase-sales/order/checkOrder',
+    method: 'post',
+    data: data
+  })
+}

+ 8 - 0
src/api/exportTrade/purchaseContract.js

@@ -115,4 +115,12 @@ export function gainUser(query) {
     method: 'get',
     params: query
   })
+}
+// 请核
+export function pleaseCheck(data) {
+  return request({
+    url: '/api/blade-purchase-sales/order/checkOrder',
+    method: 'post',
+    data: data
+  })
 }

+ 10 - 4
src/components/costBreakdown/config/feeList.json

@@ -47,10 +47,16 @@
       "width": 150
     },
     {
+      "label": "费用名称",
+      "prop": "ename",
+      "index": 3,
+      "width": 150
+    },
+    {
       "label": "币别",
       "prop": "fcyno",
       "search": true,
-      "index": 3,
+      "index": 4,
       "rules": [
         {
           "required": false,
@@ -64,7 +70,7 @@
       "label": "计量单位",
       "prop": "unitno",
       "search": true,
-      "index": 4,
+      "index": 5,
       "rules": [{
         "required": false,
         "message": "请输入计量单位",
@@ -77,7 +83,7 @@
       "type": "select",
       "prop": "dc",
       "search": true,
-      "index": 5,
+      "index": 6,
       "dicData": [{
         "label": "收",
         "value": "D"
@@ -114,7 +120,7 @@
     },{
       "label": "备注",
       "prop": "remarks",
-      "index": 6,
+      "index": 8,
       "rules": [
         {
           "required": false,

+ 1 - 0
src/components/costBreakdown/costBreakdown.vue

@@ -154,6 +154,7 @@
             selectValue = {
               id : item.id,
               cname:item.cname,
+              ename:item.ename,
               unitno : item.unitno,
               fcyno:item.fcyno
             }

+ 15 - 8
src/components/fee-info/config/feeInfo.json

@@ -34,9 +34,16 @@
       "overHidden": true
     },
     {
+      "label": "英文名称",
+      "prop": "ename",
+      "index": 3,
+      "width": 220,
+      "overHidden": true
+    },
+    {
       "label": "单价",
       "prop": "price",
-      "index": 3,
+      "index": 4,
       "slot": true,
       "overHidden": true,
       "width": 150
@@ -44,14 +51,14 @@
     {
       "label": "数量",
       "prop": "quantity",
-      "index": 4,
+      "index": 5,
       "overHidden": true,
       "width": 150
     },
     {
       "label": "金额",
       "prop": "amount",
-      "index": 5,
+      "index": 6,
       "cell": true,
       "overHidden": true,
       "width": 150
@@ -59,28 +66,28 @@
     {
       "label": "结算金额",
       "prop": "settlmentAmount",
-      "index": 5,
+      "index": 7,
       "overHidden": true,
       "width": 150
     },
     {
       "label": "币别",
       "prop": "currency",
-      "index": 7,
+      "index": 8,
       "overHidden": true,
       "width": 150
     },
     {
       "label": "汇率",
       "prop": "exchangeRate",
-      "index": 8,
+      "index": 9,
       "overHidden": true,
       "width": 150
     },
     {
       "label": "计价单位",
       "prop": "unit",
-      "index": 9,
+      "index": 10,
       "slot": true,
       "overHidden": true,
       "width": 150
@@ -88,7 +95,7 @@
     {
       "label": "备注",
       "prop": "remarks",
-      "index": 9,
+      "index": 11,
       "cell": true,
       "overHidden": true,
       "width": 150

+ 10 - 2
src/components/fee-info/main.vue

@@ -323,7 +323,10 @@ export default {
     srcType: {
       type: Number,
       default: 2,
-    }
+    },
+    corpId: {
+      type: String
+    },
   },
   filters: {
     isPercentage(val) {
@@ -387,7 +390,9 @@ export default {
   methods: {
     //选择费用
     selectValue(value,row){
+      console.log(value)
       this.$set(row,"feeName",value.cname)
+      this.$set(row,"ename",value.ename)
       this.currencyChange(row)
     },
     //选择应收应付
@@ -418,6 +423,7 @@ export default {
         itemId: null,
         corpId: row.id,
         corpName: row.name,
+        ename:null,
         feeName: null,
         price: null,
         unit: null,
@@ -511,8 +517,10 @@ export default {
     },
     //新增
     rowAdd() {
+      if (!this.corpId) return this.$message.error('请选择往来单位')
       const params = {
-        feesType:this.selectTab
+        feesType:this.selectTab,
+        corpId: this.corpId
       }
       this.$refs.feeCrud.rowCellAdd(params);
     },

+ 32 - 17
src/components/finance/financialAccount.vue

@@ -110,6 +110,7 @@
   import {applyLoan, paymentApply} from "@/api/financialManagement/paymentRequest";
   import option from "./config/option.json"
   import {getUserInfo} from "@/api/system/user";
+
   export default {
     name: "financialAccount",
     props: {
@@ -126,6 +127,15 @@
         type: Array,
         default: []
       },
+      checkData: {
+        type: Object,
+        default: {
+          url: null,
+          pageStatus: null,
+          pageLabel: null,
+          checkType: null
+        },
+      },
     },
     data(){
       return {
@@ -255,11 +265,15 @@
         this.submitButton = true
         const itemsList = this.data.map(item => {
           item.corpId = this.corpId;
-          item.tradeType = this.billData.optionType
-          item.srcType = 1
+          item.tradeType = this.billData.optionType?this.billData.optionType: item.tradeType
+          // item.srcType = 1
           return item
         })
         const params = {
+          url: this.checkData.url,
+          pageStatus: this.checkData.pageStatus,
+          pageLabel: this.checkData.pageLabel,
+          checkType: this.checkData.checkType,
           billType : this.billType,
           DC : this.billData.itemType === "采购"?"C":"D",     //账单明细会根据D C区分采购 销售搜索
           itemsList: itemsList
@@ -271,21 +285,22 @@
               this.$message.success("操作成功!")
               this.$emit("choceFun");
               //跳转付款申请页面
-              if(this.$store.getters.pqStatus){
-                this.$alert("无法自动跳,因为付费申请页面已存在!", "温馨提示", {
-                  confirmButtonText: "确定",
-                  type: 'warning',
-                  callback: action => {
-                  }
-                });
-              }else{
-                //关闭一下存在的列表页  跳转
-                this.$router.$avueRouter.closeTag('/financialManagement/paymentRequest/index');
-                this.$router.push({
-                  path: "/financialManagement/paymentRequest/index",
-                  query: {params: res.data.data.id},
-                });
-              }
+
+              // if(this.$store.getters.pqStatus){
+              //   this.$alert("无法自动跳,因为付费申请页面已存在!", "温馨提示", {
+              //     confirmButtonText: "确定",
+              //     type: 'warning',
+              //     callback: action => {
+              //     }
+              //   });
+              // }else{
+              //   //关闭一下存在的列表页  跳转
+              //   this.$router.$avueRouter.closeTag('/financialManagement/paymentRequest/index');
+              //   this.$router.push({
+              //     path: "/financialManagement/paymentRequest/index",
+              //     query: {params: res.data.data.id},
+              //   });
+              // }
             }
           }).finally(()=>{
             this.submitButton = false

+ 123 - 122
src/page/index/tags.vue

@@ -16,11 +16,7 @@
         {{ $t("tagsView.closeAll") }}
       </div>
     </div>
-    <div
-      class="avue-tags__box"
-      :class="{ 'avue-tags__box--close': !website.isFirstPage }"
-      style="display:flex;align-items: center;"
-    >
+    <div style="display:flex;align-items: center;">
       <div
         class="avue-breadcrumb"
         :class="[{ 'avue-breadcrumb--active': isCollapse }]"
@@ -28,32 +24,36 @@
       >
         <i class="icon-navicon" @click="setCollapse"></i>
       </div>
-      <el-tabs
-        v-model="active"
-        type="card"
-        @contextmenu.native="handleContextmenu"
-        :closable="tagLen !== 1"
-        @tab-click="openTag"
-        @edit="menuTag"
+      <div
+        class="avue-tags__box"
+        :class="{ 'avue-tags__box--close': !website.isFirstPage }"
       >
-        <el-tab-pane
-          :key="item.value"
-          v-for="item in tagList"
-          :label="generateTitle(item)"
-          :name="item.value"
-        >
-        </el-tab-pane>
-      </el-tabs>
-      <div class="avue-tags__menu avue-tags-top-foot">
-        <el-tooltip
-          v-if="showColor"
-          effect="dark"
-          :content="$t('navbar.color')"
-          placement="bottom"
+        <el-tabs
+          v-model="active"
+          type="card"
+          @contextmenu.native="handleContextmenu"
+          :closable="tagLen !== 1"
+          @tab-click="openTag"
+          @edit="menuTag"
         >
-          <top-color></top-color>
-        </el-tooltip>
-        <!-- <el-tooltip
+          <el-tab-pane
+            :key="item.value"
+            v-for="item in tagList"
+            :label="generateTitle(item)"
+            :name="item.value"
+          >
+          </el-tab-pane>
+        </el-tabs>
+        <div class="avue-tags__menu avue-tags-top-foot">
+          <el-tooltip
+            v-if="showColor"
+            effect="dark"
+            :content="$t('navbar.color')"
+            placement="bottom"
+          >
+            <top-color></top-color>
+          </el-tooltip>
+          <!-- <el-tooltip
           v-if="showDebug"
           effect="dark"
           :content="logsFlag ? $t('navbar.bug') : logsLen + $t('navbar.bugs')"
@@ -62,7 +62,7 @@
         >
           <top-logs></top-logs>
         </el-tooltip> -->
-        <!-- <el-tooltip
+          <!-- <el-tooltip
           v-if="showLock"
           effect="dark"
           :content="$t('navbar.lock')"
@@ -70,7 +70,7 @@
         >
           <top-lock></top-lock>
         </el-tooltip> -->
-        <!-- <el-tooltip
+          <!-- <el-tooltip
           v-if="showTheme"
           effect="dark"
           :content="$t('navbar.theme')"
@@ -80,100 +80,101 @@
             <top-theme></top-theme>
           </div>
         </el-tooltip> -->
-        <el-tooltip
-          effect="dark"
-          :content="$t('navbar.notice')"
-          placement="bottom"
-          style="margin-right:12px"
-        >
-          <div class="top-bar__item--show">
-            <top-notice></top-notice>
-          </div>
-        </el-tooltip>
-        <el-tooltip
-          effect="dark"
-          :content="$t('navbar.language')"
-          placement="bottom"
-        >
-          <div class="top-bar__item--show">
-            <top-lang></top-lang>
-          </div>
-        </el-tooltip>
-        <el-tooltip
-          v-if="showFullScren"
-          effect="dark"
-          :content="
-            isFullScren ? $t('navbar.screenfullF') : $t('navbar.screenfull')
-          "
-          placement="bottom"
-        >
-          <div>
-            <i
-              :class="isFullScren ? 'icon-tuichuquanping' : 'icon-quanping'"
-              @click="handleScreen"
-            ></i>
-          </div>
-        </el-tooltip>
-        <el-dropdown>
-          <div class="avue-tags-more">
-            <span style="margin-right:2px">{{ $t("tagsView.menu") }}</span
-            ><i class="tradingIcon icon-more"></i>
-            <!-- <el-button size="mini" icon="el-icon-more" circle></el-button> -->
-          </div>
-          <!-- <el-button type="primary" size="mini">
+          <el-tooltip
+            effect="dark"
+            :content="$t('navbar.notice')"
+            placement="bottom"
+            style="margin-right:12px"
+          >
+            <div class="top-bar__item--show">
+              <top-notice></top-notice>
+            </div>
+          </el-tooltip>
+          <el-tooltip
+            effect="dark"
+            :content="$t('navbar.language')"
+            placement="bottom"
+          >
+            <div class="top-bar__item--show">
+              <top-lang></top-lang>
+            </div>
+          </el-tooltip>
+          <el-tooltip
+            v-if="showFullScren"
+            effect="dark"
+            :content="
+              isFullScren ? $t('navbar.screenfullF') : $t('navbar.screenfull')
+            "
+            placement="bottom"
+          >
+            <div>
+              <i
+                :class="isFullScren ? 'icon-tuichuquanping' : 'icon-quanping'"
+                @click="handleScreen"
+              ></i>
+            </div>
+          </el-tooltip>
+          <el-dropdown>
+            <div class="avue-tags-more">
+              <span style="margin-right:2px">{{ $t("tagsView.menu") }}</span
+              ><i class="tradingIcon icon-more"></i>
+              <!-- <el-button size="mini" icon="el-icon-more" circle></el-button> -->
+            </div>
+            <!-- <el-button type="primary" size="mini">
           {{ $t("tagsView.menu") }}
           <i class="el-icon-arrow-down el-icon--right"></i>
         </el-button> -->
-          <top-logs ref="bug"></top-logs>
-          <top-lock ref="lock"></top-lock>
-          <top-theme ref="theme"></top-theme>
-          <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item @click.native="$parent.isSearch = true">{{
-              $t("tagsView.search")
-            }}</el-dropdown-item>
-            <el-dropdown-item @click.native="openBug">{{
-              $t("navbar.bug")
-            }}</el-dropdown-item>
-            <el-dropdown-item @click.native="openLock">{{
-              $t("navbar.lock")
-            }}</el-dropdown-item>
-            <el-dropdown-item @click.native="openTheme">{{
-              $t("navbar.theme")
-            }}</el-dropdown-item>
-            <el-dropdown-item @click.native="closeOthersTags">{{
-              $t("tagsView.closeOthers")
-            }}</el-dropdown-item>
-            <el-dropdown-item @click.native="closeAllTags">{{
-              $t("tagsView.closeAll")
-            }}</el-dropdown-item>
-            <el-dropdown-item @click.native="clearCacheTags">{{
-              $t("tagsView.clearCache")
-            }}</el-dropdown-item>
-          </el-dropdown-menu>
-        </el-dropdown>
-        <el-dropdown>
-          <span class="el-dropdown-link">
-            <img
-              class="top-bar__img"
-              :src="userInfo.avatar"
-              style="margin-left:8px"
-            />
-            <i class="el-icon-arrow-down el-icon--right"></i>
-          </span>
-          <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item>
-              <router-link to="/">{{ $t("navbar.dashboard") }}</router-link>
-            </el-dropdown-item>
-            <el-dropdown-item>
-              <router-link to="/info/index">{{
-                $t("navbar.userinfo")
-              }}</router-link>
-            </el-dropdown-item>
-            <el-dropdown-item @click.native="logout" divided
-              >{{ $t("navbar.logOut") }}
-            </el-dropdown-item>
-          </el-dropdown-menu>
-        </el-dropdown>
+            <top-logs ref="bug"></top-logs>
+            <top-lock ref="lock"></top-lock>
+            <top-theme ref="theme"></top-theme>
+            <el-dropdown-menu slot="dropdown">
+              <el-dropdown-item @click.native="$parent.isSearch = true">{{
+                $t("tagsView.search")
+              }}</el-dropdown-item>
+              <el-dropdown-item @click.native="openBug">{{
+                $t("navbar.bug")
+              }}</el-dropdown-item>
+              <el-dropdown-item @click.native="openLock">{{
+                $t("navbar.lock")
+              }}</el-dropdown-item>
+              <el-dropdown-item @click.native="openTheme">{{
+                $t("navbar.theme")
+              }}</el-dropdown-item>
+              <el-dropdown-item @click.native="closeOthersTags">{{
+                $t("tagsView.closeOthers")
+              }}</el-dropdown-item>
+              <el-dropdown-item @click.native="closeAllTags">{{
+                $t("tagsView.closeAll")
+              }}</el-dropdown-item>
+              <el-dropdown-item @click.native="clearCacheTags">{{
+                $t("tagsView.clearCache")
+              }}</el-dropdown-item>
+            </el-dropdown-menu>
+          </el-dropdown>
+          <el-dropdown>
+            <span class="el-dropdown-link">
+              <img
+                class="top-bar__img"
+                :src="userInfo.avatar"
+                style="margin-left:8px"
+              />
+              <i class="el-icon-arrow-down el-icon--right"></i>
+            </span>
+            <el-dropdown-menu slot="dropdown">
+              <el-dropdown-item>
+                <router-link to="/">{{ $t("navbar.dashboard") }}</router-link>
+              </el-dropdown-item>
+              <el-dropdown-item>
+                <router-link to="/info/index">{{
+                  $t("navbar.userinfo")
+                }}</router-link>
+              </el-dropdown-item>
+              <el-dropdown-item @click.native="logout" divided
+                >{{ $t("navbar.logOut") }}
+              </el-dropdown-item>
+            </el-dropdown-menu>
+          </el-dropdown>
+        </div>
       </div>
     </div>
   </div>

+ 11 - 4
src/views/basicData/basicFeesDesc/configuration/mainList.json

@@ -46,6 +46,13 @@
       ]
     },
     {
+      "label": "英文名称",
+      "prop": "ename",
+      "overHidden": true,
+      "index": 3,
+      "width": 180
+    },
+    {
       "label": "费用类别",
       "prop": "feesTypeId",
       "dicData": [],
@@ -69,7 +76,7 @@
       "search": true,
       "overHidden": true,
       "type": "select",
-      "index": 3,
+      "index": 5,
       "width": 120,
       "dicUrl": "/api/blade-system/dict-biz/dictionary?code=currency",
       "props": {
@@ -83,7 +90,7 @@
       "search": true,
       "overHidden": true,
       "type": "select",
-      "index": 4,
+      "index": 6,
       "width": 120,
       "dicUrl": "/api/blade-system/dict-biz/dictionary?code=unit",
       "props": {
@@ -97,7 +104,7 @@
       "prop": "dc",
       "overHidden": true,
       "search": true,
-      "index": 5,
+      "index": 7,
       "width": 120,
       "dicData": [{
         "label": "收",
@@ -118,7 +125,7 @@
       "label": "备注",
       "overHidden": true,
       "prop": "remarks",
-      "index": 6,
+      "index": 8,
       "width":200,
       "rules": [
         {

+ 124 - 322
src/views/basicData/facultyManagement/detailsPage.vue

@@ -24,46 +24,62 @@
         style="margin-top: 60px"
       ></containerTitle>
       <basic-container>
-        <el-row>
-          <el-col :span="18">
-            <avue-form
-              ref="form"
-              class="trading-form"
-              v-model="form"
-              :option="option"
-            />
-          </el-col>
-          <el-col :span="6">
-            <avue-form class="img-form" :option="option4" v-model="form" />
-          </el-col>
-        </el-row>
         <avue-form
           ref="form"
           class="trading-form"
           v-model="form"
-          :option="option2"
+          :option="option"
         />
       </basic-container>
-      <containerTitle title="详细信息"></containerTitle>
+      <containerTitle title="事业编考试的记录"></containerTitle>
       <basic-container>
-        <avue-form
-          ref="form"
-          class="trading-form"
-          v-model="form"
-          :option="option3"
-        />
+        <avue-crud
+          ref="crud"
+          :option="option2"
+          :data="dataList"
+          :table-loading="loading"
+          @saveColumn="saveColumn"
+          :cell-style="cellStyle"
+        >
+          <template slot="menuLeft">
+            <el-button
+              type="primary"
+              @click="dataList.push({ $cellEdit: true })"
+              size="small"
+              :disabled="detailData.status == 1"
+              >新增
+            </el-button>
+          </template>
+          <template slot="menu" slot-scope="{ row, index }">
+            <el-button
+              size="small"
+              type="text"
+              @click="rowCell(row, index)"
+              :disabled="detailData.status == 1"
+              >编辑</el-button
+            >
+            <el-button
+              size="small"
+              type="text"
+              @click="rowDel(row, index)"
+              :disabled="detailData.status == 1"
+              >删除</el-button
+            >
+          </template>
+        </avue-crud>
       </basic-container>
     </div>
   </div>
 </template>
 
 <script>
-import { detail, submit } from "@/api/basicData/facultyManagement";
+import { detail, submit, delItem } from "@/api/basicData/facultyManagement";
 export default {
   name: "index",
   data() {
     return {
       form: {},
+      dataList: [],
       option: {
         menuBtn: false,
         labelWidth: 100,
@@ -78,51 +94,7 @@ export default {
                 trigger: "blur"
               }
             ],
-            span: 8
-          },
-          {
-            label: "工号",
-            prop: "code",
-            rules: [
-              {
-                required: true,
-                message: "",
-                trigger: "blur"
-              }
-            ],
-            span: 8
-          },
-          {
-            label: "曾用名",
-            prop: "usedName",
-            span: 8
-          },
-          {
-            label: "性别",
-            prop: "gender",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=sex",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8
-          },
-          {
-            label: "籍贯",
-            prop: "nativePlace",
-            span: 8
-          },
-          {
-            label: "民族",
-            prop: "nation",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=nationa_lity",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8
+            span: 6
           },
           {
             label: "身份证",
@@ -134,89 +106,13 @@ export default {
                 trigger: "blur"
               }
             ],
-            span: 8
-          },
-          {
-            label: "出生日期",
-            prop: "birthdate",
-            type: "date",
-            valueFormat: "yyyy-MM-dd",
-            span: 8
-          },
-          {
-            label: "婚姻状况",
-            prop: "maritalStatus",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=marital_status",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8
-          },
-          {
-            label: "政治面貌",
-            prop: "politicsStatus",
-            type: "select",
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=politics_status",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8
-          },
-          {
-            label: "加入日期",
-            prop: "joiningDate",
-            type: "date",
-            valueFormat: "yyyy-MM-dd",
-            span: 8
-          },
-          {
-            label: "健康状况",
-            prop: "healthCondition",
-            type: "select",
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=health_condition",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8
-          }
-        ]
-      },
-      option2: {
-        menuBtn: false,
-        labelWidth: 100,
-        column: [
-          {
-            label: "血型",
-            prop: "bloodType",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=blood_type",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6
-          },
-          {
-            label: "家庭住址",
-            prop: "familyAddress",
             span: 6
           },
           {
-            label: "邮政编码",
-            prop: "postalCode",
-            span: 6
-          },
-          {
-            label: "户口性质",
-            prop: "category",
+            label: "性别",
+            prop: "gender",
             type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=category",
+            dicUrl: "/api/blade-system/dict-biz/dictionary?code=sex",
             props: {
               label: "dictValue",
               value: "dictValue"
@@ -224,87 +120,15 @@ export default {
             span: 6
           },
           {
-            label: "户口所在地",
-            prop: "residentCity",
-            span: 6
-          },
-          {
             label: "联系电话",
             prop: "phone",
             span: 6
           },
           {
-            label: "电子邮箱",
-            prop: "emailAddress",
-            span: 6
-          },
-          {
-            label: "宗教信仰",
-            prop: "faith",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=faith",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6
-          },
-          {
-            label: "紧急联系人",
-            prop: "contacts",
-            span: 6
-          },
-          {
-            label: "紧急联系人电话",
-            prop: "contactNumber",
-            span: 6
-          },
-          {
-            label: "国别",
-            prop: "nationnality",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=nationnality",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6
-          },
-          {
-            label: "港澳台侨",
-            prop: "indentation",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=TF_status",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6
-          }
-        ]
-      },
-      option3: {
-        menuBtn: false,
-        labelWidth: 100,
-        column: [
-          {
-            label: "编制类别",
-            prop: "compileCategory",
-            type: "select",
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=compile_category",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6
-          },
-          {
-            label: "身份类别",
-            prop: "identityCategory",
+            label: "学历",
+            prop: "code",
             type: "select",
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=identity_category",
+            dicUrl: "/api/blade-system/dict-biz/dictionary?code=marital_status",
             props: {
               label: "dictValue",
               value: "dictValue"
@@ -312,52 +136,24 @@ export default {
             span: 6
           },
           {
-            label: "教师类别",
-            prop: "teacherCategory",
-            type: "select",
-            dataType: "string",
-            multiple: true,
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=teacher_category",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
+            label: "入职时间",
+            prop: "joiningDate",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             span: 6
           },
           {
-            label: "工作状态",
-            prop: "workingCondition",
-            type: "select",
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=working_condition",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
+            label: "转正时间",
+            prop: "birthdate",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             span: 6
           },
           {
-            label: "现工作单位",
-            prop: "currentEmployer",
-            span: 12
-          },
-          {
-            label: "所在校区",
-            prop: "inCampus",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=in_campus",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            rules: [
-              {
-                required: true,
-                message: "",
-                trigger: "blur"
-              }
-            ],
+            label: "校龄开始日期",
+            prop: "schoolAgeSalaryDate",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             span: 6
           },
           {
@@ -379,32 +175,7 @@ export default {
             span: 6
           },
           {
-            label: "所在院系",
-            prop: "department",
-            type: "select",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=department",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6
-          },
-          {
-            label: "所在教研室",
-            prop: "inStaffRoom",
-            type: "select",
-            dataType: "string",
-            multiple: true,
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=in_staff_room",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6,
-            row: true
-          },
-          {
-            label: "双师",
+            label: "是否班主任",
             prop: "doubleTeachers",
             type: "radio",
             dataType: "string",
@@ -416,11 +187,11 @@ export default {
             span: 6
           },
           {
-            label: "专业带头人",
-            prop: "professionalLeader",
-            type: "radio",
-            dataType: "string",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=TF_status",
+            label: "职务",
+            prop: "compileCategory",
+            type: "select",
+            dicUrl:
+              "/api/blade-system/dict-biz/dictionary?code=compile_category",
             props: {
               label: "dictValue",
               value: "dictValue"
@@ -428,41 +199,34 @@ export default {
             span: 6
           },
           {
-            label: "骨干教师",
-            prop: "coreTeacher",
-            type: "radio",
-            dataType: "string",
-            dicUrl: "/api/blade-system/dict-biz/dictionary?code=TF_status",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 6,
-            row: true
-          },
-          {
-            label: "专业特长",
-            prop: "professionalExpertise",
+            label: "备注",
+            prop: "remarks",
             type: "textarea",
-            span: 24
+            span: 24,
+            minRows: 2
           }
         ]
       },
-      option4: {
-        menuBtn: false,
-        labelWidth: 100,
+      option2: {
+        align: "center",
+        addBtn: false,
+        refreshBtn: false,
+        editBtn: false,
+        delBtn: false,
+        border: true,
+        menuWidth: 120,
         column: [
           {
-            label: "个人头像",
-            prop: "headPortrait",
-            type: "upload",
-            listType: "picture-img",
-            dataType: "string",
-            action: "/api/blade-resource/oss/endpoint/put-file",
-            propsHttp: {
-              res: "data",
-              url: "link"
-            }
+            label: "考试日期",
+            prop: "birthdate",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
+            cell: true
+          },
+          {
+            label: "备注",
+            prop: "remarks",
+            cell: true
           }
         ]
       }
@@ -477,12 +241,19 @@ export default {
     if (this.detailData.id) {
       this.getDetail(this.detailData.id);
     }
+    if (this.detailData.status == 1) {
+      this.option.disabled = true;
+    }
   },
   methods: {
+    cellStyle() {
+      return "padding:0;height:40px;";
+    },
     getDetail(id) {
       detail(id)
         .then(res => {
           this.form = res.data.data;
+          this.dataList = res.data.data.causeList;
         })
         .finally(() => {
           // this.loading = false;
@@ -490,15 +261,46 @@ export default {
           // this.pageLoading = false;
         });
     },
+    rowCell(row, index) {
+      if (row.$cellEdit == true) {
+        this.$set(row, "$cellEdit", false);
+      } else {
+        this.$set(row, "$cellEdit", true);
+      }
+    },
+    rowDel(row, index) {
+      this.$confirm("确定删除数据?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(() => {
+        if (row.id) {
+          delItem(row.id).then(res => {
+            this.$message({
+              type: "success",
+              message: "删除成功!"
+            });
+            this.dataList.splice(index, 1);
+          });
+        } else {
+          this.$message({
+            type: "success",
+            message: "删除成功!"
+          });
+          this.dataList.splice(index, 1);
+        }
+      });
+    },
     //修改提交触发
     editCustomer() {
       this.$refs["form"].validate((valid, done) => {
         done();
         if (valid) {
-          submit({ ...this.form })
+          submit({ ...this.form, causeList: this.dataList })
             .then(res => {
               this.$message.success("保存成功");
               this.form = res.data.data;
+              this.dataList = res.data.data.causeList;
             })
             .finally(() => {});
         } else {

+ 99 - 37
src/views/basicData/facultyManagement/index.vue

@@ -34,7 +34,10 @@
           </el-button>
         </template>
         <template slot-scope="{ row, index }" slot="menu">
-          <el-button type="text" size="small" @click.stop="editOpen(row)">
+          <el-button type="text" size="small" @click.stop="editOpen(row, 1)">
+            查看
+          </el-button>
+          <el-button type="text" size="small" @click.stop="editOpen(row, 2)">
             编辑
           </el-button>
           <el-button type="text" size="small" @click.stop="rowDel(row, index)">
@@ -92,7 +95,7 @@ export default {
       },
       option: {
         searchShow: true,
-        searchMenuSpan: 16,
+        searchMenuSpan: 24,
         align: "center",
         searchSpan: 8,
         border: true,
@@ -100,7 +103,7 @@ export default {
         viewBtn: false,
         editBtn: false,
         delBtn: false,
-        menuWidth: 100,
+        menuWidth: 140,
         dialogClickModal: false,
         searchLabelWidth: 100,
         searchIcon: true,
@@ -108,48 +111,103 @@ export default {
         addBtnText: "新单",
         column: [
           {
-            label: "工号",
-            prop: "code",
+            label: "姓名",
+            prop: "cname"
+          },
+          {
+            label: "身份证",
+            prop: "idNumber"
+          },
+          {
+            label: "性别",
+            prop: "gender"
+          },
+          {
+            label: "学历",
+            prop: "code"
+          },
+          {
+            label: "入职日期",
+            prop: "joiningDate"
+          },
+          {
+            label: "入职日期开始",
+            prop: "createTimeStart",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             search: true,
-            span: 8,
-            maxlength: 3
+            hide: true,
+            showColumn: false,
+            span: 8
           },
           {
-            label: "姓名",
-            prop: "cname",
+            label: "入职日期结束",
+            prop: "createTimeEnd",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             search: true,
-            span: 8,
-            maxlength: 3
+            hide: true,
+            showColumn: false
+          },
+          {
+            label: "转正日期",
+            prop: "birthdate"
           },
           {
-            label: "身份类别",
-            prop: "identityCategory",
+            label: "转正日期开始",
+            prop: "dateValidityStart",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             search: true,
-            type: "select",
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=identity_category",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8,
-            maxlength: 3
+            hide: true,
+            showColumn: false,
+            span: 8
           },
           {
-            label: "教师类别",
-            prop: "teacherCategory",
+            label: "转正日期结束",
+            prop: "dateValidityEnd",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
             search: true,
-            type: "select",
-            dataType: "string",
-            multiple: true,
-            dicUrl:
-              "/api/blade-system/dict-biz/dictionary?code=teacher_category",
-            props: {
-              label: "dictValue",
-              value: "dictValue"
-            },
-            span: 8,
-            maxlength: 3
+            hide: true,
+            showColumn: false,
+            span: 8
+          },
+          {
+            label: "校龄日期",
+            prop: "schoolAgeSalaryDate"
+          },
+          {
+            label: "校龄日期开始",
+            prop: "schoolAgeSalaryDateStart",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
+            search: true,
+            hide: true,
+            showColumn: false,
+            span: 8
+          },
+          {
+            label: "校龄日期结束",
+            prop: "schoolAgeSalaryDateEnd",
+            type: "date",
+            valueFormat: "yyyy-MM-dd",
+            search: true,
+            hide: true,
+            showColumn: false,
+            span: 8
+          },
+          {
+            label: "所在部门",
+            prop: "inSection"
+          },
+          {
+            label: "是否班主任",
+            prop: "doubleTeachers"
+          },
+          {
+            label: "职务",
+            prop: "compileCategory"
           }
         ]
       },
@@ -187,6 +245,9 @@ export default {
     detailsPage
   },
   methods: {
+    cellStyle() {
+      return "padding:0;height:40px;";
+    },
     derivation() {
       window.open(
         `/api/blade-client/schoolteacher/export/template?${
@@ -231,9 +292,10 @@ export default {
           this.loading = false;
         });
     },
-    editOpen(row) {
+    editOpen(row, status) {
       this.detailData = {
-        id: row.id
+        id: row.id,
+        status: status
       };
       this.show = false;
     },

+ 33 - 10
src/views/businessManagement/deliveryNotice/detailsPageEdit.vue

@@ -99,6 +99,14 @@
                 </el-select>
                 <warehouse-select v-else-if="item.prop === 'storageId'" v-model="form[item.prop]"
                                  :configuration="configurationWarehouse" style="width: 100%" :disabled="detailData.seeDisabled || arrivalDisabled || deliverDisabled"/>
+                <el-select v-else-if="item.prop === 'chargeMember'"
+                           v-model="form[item.prop]" placeholder="请选择"
+                           filterable
+                           size="small"
+                           style="width: 100%;"
+                           :disabled="detailData.seeDisabled">
+                  <el-option v-for="(item,index) in userList" :key="index" :label="item.realName" :value="item.realName"></el-option>
+                </el-select>
                 <el-input
                   v-else-if="item.type == 'number'"
                   placeholder="请输入"
@@ -474,6 +482,7 @@ import {
   IntegerFormat
 } from "@/util/validate";
 import reportDialog from "@/components/report-dialog/main";
+import { gainUser } from "@/api/basicData/customerInquiry";
 
 export default {
   name: "detailsPage",
@@ -806,6 +815,16 @@ export default {
               }
             ]
           },{
+            label: '业务员',
+            prop: 'chargeMember',
+            rules: [
+              {
+                required: false,
+                message: ' ',
+                trigger: 'change'
+              }
+            ]
+          },{
             label: "备注",
             span: 24,
             type: 'textarea',
@@ -850,6 +869,7 @@ export default {
       // 确认到货禁用
       arrivalDisabled: false,
       switchDialog: false,
+      userList: [],
     }
   },
   mounted() {
@@ -910,6 +930,9 @@ export default {
     selectWareHouse().then(res => {
       this.warehouseName = res.data.data.records
     })
+    gainUser().then(res => {
+      this.userList = res.data.data;
+    });
     if (this.detailData.id) {
       let id = this.detailData.id
       this.queryData(id)
@@ -1147,7 +1170,7 @@ export default {
             })
           })
         } else if (type == '到货') {
-          if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+          if (this.goodsActives == 'gift') {
             this.form.deliveryItemsList = this.goodsShowData.concat(this.contactsData)
           } else {
             this.form.deliveryItemsList = this.goodsShowData.concat(this.giftData)
@@ -1587,7 +1610,7 @@ export default {
           this.contactsData.forEach(item => {
             this.$set(item, 'contractAmount', item.deliveryAmount)
           })
-          if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+          if (this.goodsActives == 'gift') {
             this.form.deliveryItemsList = this.goodsShowData.concat(this.contactsData)
           } else {
             this.form.deliveryItemsList = this.goodsShowData.concat(this.giftData)
@@ -1635,7 +1658,7 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
@@ -1671,7 +1694,7 @@ export default {
           let getGoodsList = []
           let getGiftList = []
           let getFeeList = this.$refs.feeInfo.submitData()
-          if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+          if (this.goodsActives == 'gift') {
             getGiftList = this.goodsShowData
             getGoodsList = this.contactsData
           } else {
@@ -1695,7 +1718,7 @@ export default {
             })
           } else {
             //商品信息
-            if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+            if (this.goodsActives == 'gift') {
               this.form.deliveryItemsList = this.goodsShowData.concat(this.contactsData)
             } else {
               this.form.deliveryItemsList = this.goodsShowData.concat(this.giftData)
@@ -1724,7 +1747,7 @@ export default {
       this.$refs["form"].validate((valid) => {
         if (valid) {
           //商品信息
-          if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+          if (this.goodsActives == 'gift') {
             this.form.deliveryItemsList = this.goodsShowData.concat(this.contactsData)
           } else {
             this.form.deliveryItemsList = this.goodsShowData.concat(this.giftData)
@@ -1752,7 +1775,7 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
@@ -1775,7 +1798,7 @@ export default {
           this.$message.info('已取消')
         })
       } else {
-        if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+        if (this.goodsActives == 'gift') {
           this.form.deliveryItemsList = this.goodsShowData.concat(this.contactsData)
         } else {
           this.form.deliveryItemsList = this.goodsShowData.concat(this.giftData)
@@ -1792,7 +1815,7 @@ export default {
     },
     // 撤销到货
     cancelArrival() {
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         this.form.deliveryItemsList = this.goodsShowData.concat(this.contactsData)
       } else {
         this.form.deliveryItemsList = this.goodsShowData.concat(this.giftData)
@@ -1874,7 +1897,7 @@ export default {
       if (inSave) {
         this.$message.success("重置成功");
         //关闭窗口
-        this.$refs.crud.$refs.dialogColumn.columnBox = false;
+        this.$refs.crudContact.$refs.dialogColumn.columnBox = false;
       }
     },
     // 商品表格加色

+ 18 - 10
src/views/businessManagement/purchaseOrder/configuration/mainList.json

@@ -84,6 +84,14 @@
       "overHidden": true
     },
     {
+      "label": "采购金额",
+      "prop": "orderAmount",
+      "search": false,
+      "index": 6,
+      "width": 100,
+      "overHidden": true
+    },
+    {
       "type": "select",
       "dicUrl": "/api/blade-system/dict-biz/dictionary?code=payment_term",
       "props": {
@@ -93,7 +101,7 @@
       "label": "付款方式",
       "prop": "paymentType",
       "search": true,
-      "index": 6,
+      "index": 7,
       "width": 100,
       "overHidden": true
     },
@@ -101,7 +109,7 @@
       "label": "预估运费",
       "prop": "oceanFreight",
       "search": false,
-      "index": 7,
+      "index": 8,
       "width": 100,
       "overHidden": true
     },
@@ -109,7 +117,7 @@
       "label": "包装要求",
       "prop": "packageRemarks",
       "search": true,
-      "index": 8,
+      "index": 9,
       "width": 100,
       "overHidden": true
     },
@@ -117,7 +125,7 @@
       "label": "公司户头",
       "prop": "banksAccountName",
       "search": true,
-      "index": 9,
+      "index": 10,
       "width": 100,
       "overHidden": true
     },
@@ -128,7 +136,7 @@
       "searchRange": true,
       "prop": "businesDate",
       "search": false,
-      "index": 10,
+      "index": 11,
       "width": 100,
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd",
@@ -139,7 +147,7 @@
       "label": "银行账号",
       "prop": "banks",
       "search": false,
-      "index": 11,
+      "index": 12,
       "width": 100,
       "overHidden": true
     },
@@ -147,7 +155,7 @@
       "label": "系统编号",
       "prop": "sysNo",
       "search": false,
-      "index": 12,
+      "index": 13,
       "width": 100,
       "overHidden": true
     },
@@ -155,7 +163,7 @@
       "label": "来源单号",
       "prop": "orgOrderNo",
       "search": false,
-      "index": 13,
+      "index": 14,
       "width": 100,
       "overHidden": true
     },
@@ -169,7 +177,7 @@
       "label": "制单人",
       "prop": "createUser",
       "search": true,
-      "index": 14,
+      "index": 15,
       "width": 100,
       "overHidden": true
     },
@@ -180,7 +188,7 @@
       "searchRange": true,
       "prop": "createTime",
       "search": true,
-      "index": 15,
+      "index": 16,
       "width": 100,
       "format": "yyyy-MM-dd",
       "valueFormat": "yyyy-MM-dd",

+ 52 - 6
src/views/businessManagement/purchaseOrder/detailsPageEdit.vue

@@ -67,7 +67,7 @@
           size="small"
           class="el-button--small-yh"
           type="primary"
-          :disabled="disabled || detailData.seeDisabled || browse"
+          :disabled="disabled || detailData.seeDisabled"
           @click="editCustomer(false)"
           :loading="saveLoading"
         >保 存
@@ -241,6 +241,7 @@
           optionType="GN"
           itemType="采购"
           @beforeFinance="beforeFinance"
+          :corpId="form.corpId"
         />
 <!--        <containerTitle title="费用明细"></containerTitle>-->
 <!--        <basic-container style="margin-bottom: 10px">-->
@@ -492,7 +493,9 @@
     >
       <financial-account
         :billType="billType"
-        :billData="billData"
+        :billData="{}"
+        :arrList="applyPaymentList"
+        :checkData="financeData"
         @choceFun="choceFun"
       >
       </financial-account>
@@ -597,6 +600,7 @@ import financialAccount from "../../../components/finance/financialAccount";
 import reportDialog from "@/components/report-dialog/main";
 import check from "@/components/check/check";
 import checkSchedule from "@/components/check/checkSchedule";
+import { customerList as feeList } from "@/api/basicData/basicFeesDesc";
 
 export default {
   name: "detailsPage",
@@ -711,6 +715,7 @@ export default {
       },
       billType:"申请",  //账单类型
       billData:{},     //账单需要数据
+      financeData: {}, // 账单请核需要的路由
       applyPaymentDialog:false,//生成账单组件
       applicationDialog: false,// 申请记录
       dialogVisible: false,
@@ -775,7 +780,7 @@ export default {
             prop: 'packageRemarks',
             rules: [
               {
-                required: true,
+                required: false,
                 message: ' ',
                 trigger: 'blur'
               }
@@ -889,6 +894,8 @@ export default {
       checkScheduleDialog: false,
       checkId: '',
       batchNo:'',
+      feesOption: [],
+      applyPaymentList: [],
     }
   },
   mounted() {
@@ -917,6 +924,9 @@ export default {
     this.getWorkDicts("packageRemarks").then(res => {
       this.packageOptions = res.data.data;
     });
+    feeList().then(res => {
+      this.feesOption = res.data.data.records
+    })
     if (this.detailData.check) {
       this.checkDisabled = true
       this.batchNo = this.detailData.check.batchNo
@@ -1016,6 +1026,8 @@ export default {
         if (isCopy) {
           delete this.form.sysNo;
           delete this.form.id
+          this.form.status = 0
+          this.browse = false
           this.contactsData.forEach(item => {
             delete item.id
             delete item.pid
@@ -1547,7 +1559,15 @@ export default {
       });
     },
     beforeBillData(bool,type){
+      this.applyPaymentList = [];
+      let arr = [];
       this.billType = type
+      this.financeData = {
+        url:"/financialManagement/paymentRequest/index",
+        pageStatus:"this.$store.getters.pqStatus",
+        pageLabel:"付费申请",
+        checkType: 'ffsq'
+      }
       //采购明细提单号 list
       this.billData = {
         srcOrderno:this.form.orderNo,
@@ -1562,10 +1582,36 @@ export default {
         srcType: 1,
         tradeType: 'GN',
         optionType: 'GN',
-        amount: this.form.orderAmount
+        amount: this.form.orderAmount,
+        costType: this.feesOption.find(e => e.cname == '货款').id
       }
+      arr.push(this.billData)
+      let getFeeList = this.$refs.feeInfo.submitData().filter(item => item.feesType == 2)
+      getFeeList.forEach(item => {
+        let form = {
+          srcOrderno:this.form.orgOrderNo,
+          itemType:"采购",
+          corpsName:item.corpName,
+          corpId: item.corpId,
+          srcParentId: this.form.id,
+          currency: 'CNY',
+          exchangeRate: '1',
+          taxRate: '0',
+          accDate: this.form.businesDate,
+          srcType: 2,
+          tradeType: 'GN',
+          optionType: 'GN',
+          chargeMember: this.form.chargeMember,
+          parentId: this.form.id,
+          amount: item.amount,
+          costType: item.itemId,
+          srcFeesId: item.id,
+        }
+        arr.push(form)
+      })
+      this.applyPaymentList = [...arr]
       if(bool){ //申请货款
-        this.billData.srcId = -1
+        // this.billData.srcId = -1
       }
     },
     // 查看申请记录
@@ -1652,7 +1698,7 @@ export default {
       if (inSave) {
         this.$message.success("重置成功");
         //关闭窗口
-        this.$refs.crud.$refs.dialogColumn.columnBox = false;
+        this.$refs.crudContact.$refs.dialogColumn.columnBox = false;
       }
     },
     returnBack(row) {

+ 9 - 3
src/views/businessManagement/purchaseOrder/index.vue

@@ -113,6 +113,7 @@
         v-if="financialAccountDialog"
         :billType="billType"
         :billData="billData"
+        :checkData="financeData"
         :arrList="applyPaymentList"
         @choceFun="choceFun"
       >
@@ -172,6 +173,12 @@ export default {
       detailData: {},
       billType:"申请",  //账单类型
       billData:{},     //账单需要数据
+      financeData: {
+        url:"/financialManagement/paymentRequest/index",
+        pageStatus:"this.$store.getters.pqStatus",
+        pageLabel:"付费申请",
+        checkType: 'ffsq'
+      }, // 账单请核需要的路由
       applyPaymentDialog:false,//生成账单组件
       financialAccountDialog:false,
       applyPaymentList: [],
@@ -179,8 +186,8 @@ export default {
   },
   async created() {
     this.search.requiredArrivalDate = defaultDate(1)
-    this.option = option
-    // this.option = await this.getColumnData(this.getColumnName(17), option);
+    // this.option = option
+    this.option = await this.getColumnData(this.getColumnName(17), option);
     let i = 0;
     this.option.column.forEach(item => {
       if (item.search) i++
@@ -258,7 +265,6 @@ export default {
     //查询全部
     initData() {
       customerList().then(res => {
-        console.log(this.form);
         const column = this.findObject(this.option.column, "parentId");
         column.dicData = res.data.data.records;
       });

+ 23 - 19
src/views/businessManagement/receipt/detailsPageEdit.vue

@@ -58,44 +58,44 @@
                 <!--                <avue-input-tree v-if="item.prop === 'corpsTypeId'"  leaf-only multiple :props="{label:'title'}" v-model="form[item.prop]" placeholder="请选择内容" type="tree" :dic="dic"-->
                 <!--                ></avue-input-tree>-->
                 <el-date-picker v-if="item.type === 'datetime'" style="width: 100%;" v-model="form[item.prop]"
-                                size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss" :disabled="detailData.seeDisabled"/>
+                                size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss" :disabled="detailData.seeDisabled || receiveDisabled"/>
                 <el-date-picker v-else-if="item.type === 'date'" style="width: 100%;" v-model="form[item.prop]"
                                 size="small" type="date" placeholder="选择日期"
-                                :disabled="detailData.seeDisabled"/>
+                                :disabled="detailData.seeDisabled || receiveDisabled"/>
                 <crop-select
                   v-else-if="item.prop === 'corpId'"
                   v-model="form[item.prop]"
                   corpType="GYS"
-                  :disabled="detailData.seeDisabled"
+                  :disabled="detailData.seeDisabled || receiveDisabled"
                 ></crop-select>
                 <crop-select
                   v-else-if="item.prop === 'salesCompany'"
                   v-model="form[item.prop]"
                   corpType="GS"
-                  :disabled="detailData.seeDisabled"
+                  :disabled="detailData.seeDisabled || receiveDisabled"
                 ></crop-select>
 <!--                <selectComponent v-else-if="item.prop === 'corpId'" v-model="form[item.prop]"-->
 <!--                                 :configuration="configuration" style="width: 100%" :disabled="detailData.seeDisabled"/>-->
 <!--                <selectComponent v-else-if="item.prop === 'salesCompany'" v-model="form[item.prop]"-->
 <!--                                 :configuration="companyConfiguration" style="width: 100%" :disabled="detailData.seeDisabled"/>-->
-                <el-select v-else-if="item.prop === 'purchaseMode'" v-model="form[item.prop]" placeholder="请选择" clearable filterable style="width: 100%" size="small" :disabled="detailData.seeDisabled">
+                <el-select v-else-if="item.prop === 'purchaseMode'" v-model="form[item.prop]" placeholder="请选择" clearable filterable style="width: 100%" size="small" :disabled="detailData.seeDisabled || receiveDisabled">
                   <el-option v-for="(item,index) in procurementMethodOption" :key="index" :label="item.dictValue" :value="item.dictValue"></el-option>
                 </el-select>
-                <el-select v-else-if="item.prop === 'warehouseType'" v-model="form[item.prop]" placeholder="请选择" clearable filterable style="width: 100%" size="small" :disabled="detailData.seeDisabled">
+                <el-select v-else-if="item.prop === 'warehouseType'" v-model="form[item.prop]" placeholder="请选择" clearable filterable style="width: 100%" size="small" :disabled="detailData.seeDisabled || receiveDisabled">
                   <el-option v-for="(item,index) in warehouseTypeOption" :key="index" :label="item.dictValue" :value="item.dictValue"></el-option>
                 </el-select>
                 <warehouse-select v-else-if="item.prop === 'storageId'" v-model="form[item.prop]"
-                                  :configuration="configurationWarehouse" style="width: 100%" :disabled="detailData.seeDisabled"/>
+                                  :configuration="configurationWarehouse" style="width: 100%" :disabled="detailData.seeDisabled || receiveDisabled"/>
                 <el-input
                   v-else-if="item.type == 'number'"
                   placeholder="请输入"
                   v-input-limit="2"
                   size="small"
-                  :disabled="item.disabled || detailData.seeDisabled"
+                  :disabled="item.disabled || detailData.seeDisabled || receiveDisabled"
                   v-model.trim="form[item.prop]"
                 />
-                <el-input type="textarea" v-else-if="item.type === 'textarea'" v-model.trim="form[item.prop]" size="small" autocomplete="off" :disabled="item.disabled || detailData.seeDisabled"></el-input>
-                <el-input type="age" v-else v-model.trim="form[item.prop]" size="small" autocomplete="off" :disabled="item.disabled || detailData.seeDisabled"></el-input>
+                <el-input type="textarea" v-else-if="item.type === 'textarea'" v-model.trim="form[item.prop]" size="small" autocomplete="off" :disabled="item.disabled || detailData.seeDisabled || receiveDisabled"></el-input>
+                <el-input type="age" v-else v-model.trim="form[item.prop]" size="small" autocomplete="off" :disabled="item.disabled || detailData.seeDisabled || receiveDisabled"></el-input>
               </el-form-item>
             </el-col>
           </el-row>
@@ -123,7 +123,7 @@
                   type="text"
                   size="small"
                   @click="rowCell(row,index)"
-                  :disabled="detailData.seeDisabled"
+                  :disabled="detailData.seeDisabled || receiveDisabled"
               >{{ row.$cellEdit ? '保存' : '修改' }}
               </el-button>
               <el-button
@@ -131,7 +131,7 @@
                 icon="el-icon-delete"
                 type="text"
                 @click="rowDel(row, index)"
-                :disabled="detailData.seeDisabled"
+                :disabled="detailData.seeDisabled || receiveDisabled"
                 v-if="!row.$cellEdit"
               >删 除</el-button>
             </template>
@@ -149,7 +149,7 @@
                          icon="el-icon-plus"
                          size="small"
                          @click="commoditySelection"
-                         :disabled="detailData.seeDisabled"
+                         :disabled="detailData.seeDisabled || receiveDisabled"
               >录入明细
               </el-button>
               <el-button type="info" :size="size" icon="el-icon-printer">报 表</el-button>
@@ -159,7 +159,7 @@
         <fee-info
           ref="feeInfo"
           :orderFeesList="advantageProjectData"
-          :disabled="detailData.seeDisabled"
+          :disabled="detailData.seeDisabled || receiveDisabled"
           @beforeFinance="beforeFinance"
           :srcType="3"
           optionType="GN"
@@ -247,7 +247,7 @@
                 icon="el-icon-plus"
                 size="small"
                 @click.stop="$refs.uploadCrud.rowAdd()"
-                :disabled="detailData.seeDisabled"
+                :disabled="detailData.seeDisabled || receiveDisabled"
               >上传</el-button
               >
             </template>
@@ -257,7 +257,7 @@
                 icon="el-icon-edit"
                 type="text"
                 @click="$refs.uploadCrud.rowEdit(row, index)"
-                :disabled="detailData.seeDisabled"
+                :disabled="detailData.seeDisabled || receiveDisabled"
               >编 辑</el-button
               >
               <el-button
@@ -265,7 +265,7 @@
                 icon="el-icon-delete"
                 type="text"
                 @click="rowDelBankOfDeposit(row, index)"
-                :disabled="detailData.seeDisabled"
+                :disabled="detailData.seeDisabled || receiveDisabled"
               >删 除</el-button
               >
             </template>
@@ -705,6 +705,8 @@ export default {
       rowHeight: '',
       // 查询时loading页面
       pageLoading: false,
+      // 收货禁用
+      receiveDisabled: false,
     }
   },
   mounted() {
@@ -816,6 +818,7 @@ export default {
       this.pageLoading = true
       detail(id).then(res => {
         this.form = res.data.data;
+        this.receiveDisabled = this.form.deliveryStatus == '录入'? false: true
         this.contactsData = this.form.deliveryItemsList
         this.advantageProjectData = this.form.deliveryFeesList
         this.bankOfDepositData = this.form.deliveryFilesList
@@ -890,7 +893,8 @@ export default {
             delete item.id
             delete item.pid
           })
-          this.form.deliveryStatus == '录入'
+          this.form.deliveryStatus = '录入'
+          this.receiveDisabled = false;
         }
       }).finally(() => {
         this.saveLoading = false
@@ -1418,7 +1422,7 @@ export default {
       if (inSave) {
         this.$message.success("重置成功");
         //关闭窗口
-        this.$refs.crud.$refs.dialogColumn.columnBox = false;
+        this.$refs.crudContact.$refs.dialogColumn.columnBox = false;
       }
     },
     //费用明细回调

+ 15 - 0
src/views/businessManagement/salesOrder/configuration/customerContact.json

@@ -130,6 +130,21 @@
         }
       ]
     },{
+      "label": "质量胎",
+      "prop": "shopQuality",
+      "index": 4,
+      "width":140,
+      "cell": false,
+      "slot": true,
+      "overHidden": true,
+      "rules": [
+        {
+          "required": false,
+          "message": "请选择",
+          "trigger": "blur"
+        }
+      ]
+    },{
       "label": "订货数量",
       "prop": "orderQuantity",
       "index": 5,

+ 76 - 14
src/views/businessManagement/salesOrder/detailsPageEdit.vue

@@ -72,7 +72,7 @@
         <el-button
           class="el-button--small-yh"
           type="primary"
-          :disabled="disabled || detailData.seeDisabled || browse"
+          :disabled="disabled || detailData.seeDisabled"
           :loading="saveLoading"
           size="small"
           @click="editCustomer(false)"
@@ -316,6 +316,15 @@
                 {{row.cname}}
               </span>
             </template>
+            <template slot="shopQuality" slot-scope="{ row, index }">
+              <el-switch
+                v-model="row.shopQuality"
+                :disabled="!row.$cellEdit"
+                :active-value="1"
+                :inactive-value="0"
+                @change="(val) => shopQualityChange(val, row)"
+              ></el-switch>
+            </template>
             <template slot-scope="{row,index}" slot="menu">
               <el-button
                   type="text"
@@ -412,6 +421,7 @@
           optionType="GN"
           itemType="销售"
           @beforeFinance="beforeFinance"
+          :corpId="form.corpId"
         />
 <!--        <containerTitle title="费用明细"></containerTitle>-->
 <!--        <basic-container style="margin-bottom: 10px">-->
@@ -693,8 +703,9 @@
     >
       <apply-payment
         :billType="billType"
-        :billData="billData"
+        :billData="{}"
         itemType="销售"
+        :arrList="applyPaymentList"
         @choceFun="choceFun"
       >
       </apply-payment>
@@ -720,7 +731,8 @@
     >
       <financial-account
         :billType="billType"
-        :billData="billData"
+        :billData="{}"
+        :arrList="applyPaymentList"
         @choceFun="choceFun"
       >
       </financial-account>
@@ -840,6 +852,7 @@ import financialAccount from "../../../components/finance/financialAccount";
 import { gainUser } from "@/api/basicData/customerInquiry";
 import check from "@/components/check/check";
 import checkSchedule from "@/components/check/checkSchedule";
+import { customerList as feeList } from "@/api/basicData/basicFeesDesc";
 
 export default {
   name: "detailsPage",
@@ -1429,7 +1442,7 @@ export default {
             prop: 'packageRemarks',
             rules: [
               {
-                required: false,
+                required: true,
                 message: ' ',
                 trigger: 'change'
               }
@@ -1571,12 +1584,14 @@ export default {
       browse: false,
       roleName: '',
       userList: [],
+      feesOption: [],
       checkDisabled: false,
       checkData: {},
       checkDialog: false,
       checkScheduleDialog: false,
       checkId: '',
       batchNo:'',
+      applyPaymentList: [],
     }
   },
   mounted() {
@@ -1625,6 +1640,9 @@ export default {
     gainUser().then(res => {
       this.userList = res.data.data;
     });
+    feeList().then(res => {
+      this.feesOption = res.data.data.records
+    })
     if (this.detailData.seeDisabled) {
       // this.bankOfDeposit.column.forEach(item => {
       //   item.editDisabled = true
@@ -1737,6 +1755,8 @@ export default {
         this.oldUploadList = this.deepClone(this.bankOfDepositData)
         if (isCopy) {
           this.$set(this.form, 'orderStatus', '录入')
+          this.form.status = 0
+          this.browse = false
           delete this.form.id
           delete this.form.orgOrderNo
           delete this.form.orderNo
@@ -1814,7 +1834,7 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
@@ -2004,7 +2024,7 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
@@ -2056,7 +2076,7 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
@@ -2084,6 +2104,8 @@ export default {
     },
     //生成账单 拿到主表信息
     beforeBillData(bool,type){
+      this.applyPaymentList = [];
+      let arr = [];
       this.billType = type
       this.billData = {
         srcOrderno:this.form.orgOrderNo,
@@ -2099,10 +2121,36 @@ export default {
         tradeType: 'GN',
         optionType: 'GN',
         chargeMember: this.form.chargeMember,
-        amount: this.form.balanceAmount
+        amount: this.form.balanceAmount,
+        costType: this.feesOption.find(e => e.cname == '货款').id
       }
+      arr.push(this.billData)
+      let getFeeList = this.$refs.feeInfo.submitData().filter(item => item.feesType == 1)
+      getFeeList.forEach(item => {
+        let form = {
+          srcOrderno:this.form.orgOrderNo,
+          itemType:"销售",
+          corpsName:this.form.corpName,
+          corpId:this.form.corpId,
+          srcParentId: this.form.id,
+          currency: 'CNY',
+          exchangeRate: '1',
+          taxRate: '0',
+          accDate: this.form.businesDate,
+          srcType: 2,
+          tradeType: 'GN',
+          optionType: 'GN',
+          chargeMember: this.form.chargeMember,
+          parentId: this.form.id,
+          amount: item.amount,
+          costType: item.itemId,
+          srcFeesId: item.id,
+        }
+        arr.push(form)
+      })
+      this.applyPaymentList = [...arr]
       if(bool){ //申请货款
-        this.billData.srcId = -1
+        // this.billData.srcId = -1
       }
     },
     //关闭账单
@@ -2304,6 +2352,7 @@ export default {
           this.$set(this.goodsListSave[item], 'orderQuantity', 1)
           this.$set(this.goodsListSave[item], 'actualQuantity', 0)
           this.$set(this.goodsListSave[item], 'invoiceWeight', this.goodsListSave[item].cartonWeight)
+          this.$set(this.goodsListSave[item], 'shopQuality', 0)
           this.goodsListSave[item].amount = 0
           if (this.goodsActives == "goods") {
             this.$set(this.goodsListSave[item], 'goodType', 0)
@@ -2366,6 +2415,7 @@ export default {
           this.$set(this.tableData[item], 'itemType', this.tableData[item].typeno)
           this.$set(this.tableData[item], 'orderQuantity', 1)
           this.$set(this.tableData[item], 'actualQuantity', 0)
+          this.$set(this.tableData[item], 'shopQuality', 0)
           this.$set(this.tableData[item], 'invoiceWeight', this.tableData[item].cartonWeight)
           this.tableData[item].amount = 0
           if (this.goodsActives == "goods") {
@@ -2535,6 +2585,7 @@ export default {
           // 积分
           this.$set(list[item], 'integralMultiples', 0)
           this.$set(list[item], 'integral', 0)
+          this.$set(list[item], 'shopQuality', 0)
 
           if (listLength != 0) {
             this.$set(buyFree[item], 'actualQuantity', 0)
@@ -2548,6 +2599,7 @@ export default {
             // 积分
             this.$set(buyFree[item], 'integralMultiples', 0)
             this.$set(buyFree[item], 'integral', 0)
+            this.$set(buyFree[item], 'shopQuality', 0)
             this.maxGoodsNum++
             delete buyFree[item].id
             delete buyFree[item].pid
@@ -2786,7 +2838,7 @@ export default {
       this.$refs["form"].validate((valid) => {
         if (valid) {
           //商品信息
-          if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+          if (this.goodsActives == 'gift') {
             this.form.orderItemsList = this.goodsShowData.concat(this.contactsData)
           } else {
             this.form.orderItemsList = this.goodsShowData.concat(this.giftData)
@@ -2945,6 +2997,7 @@ export default {
     priceChange(row) {
       if (!row.price) {
         row.price = 0;
+        row.amount = '0.00'
       } else {
         row.amount = (row.price * row.orderQuantity).toFixed(2)
       }
@@ -2962,7 +3015,7 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
@@ -3020,7 +3073,7 @@ export default {
       if (inSave) {
         this.$message.success("重置成功");
         //关闭窗口
-        this.$refs.crud.$refs.dialogColumn.columnBox = false;
+        this.$refs.crudContact.$refs.dialogColumn.columnBox = false;
       }
     },
     returnBack(row) {
@@ -3185,8 +3238,9 @@ export default {
     },
     // 请核
     pleaseCheck() {
+      const giftList = this.goodsActives == 'gift'? this.goodsShowData: this.giftData
       if (this.verification()) {
-        this.$confirm("您确定提交此次申请吗?", {
+        this.$confirm(giftList.length == 0?"此单没有赠品,确定提交此次审批吗?": "您确定提交此次申请吗?", {
           confirmButtonText: "确定",
           cancelButtonText: "取消",
           type: "warning"
@@ -3217,13 +3271,17 @@ export default {
       let getGoodsList = []
       let getGiftList = []
       let getFeeList = this.$refs.feeInfo.submitData()
-      if (this.goodsShowData.findIndex(item => item.goodType == 0) == -1) {
+      // this.goodsShowData.findIndex(item => item.goodType == 0) == -1
+      if (this.goodsActives == 'gift') {
         getGiftList = this.goodsShowData
         getGoodsList = this.contactsData
       } else {
+        console.log(this.giftData)
         getGoodsList = this.goodsShowData
         getGiftList = this.giftData
       }
+      console.log(getGiftList)
+      console.log(this.oldGiftList)
       if (contrastObj(this.form, this.oldForm) ||
         contrastList(getGoodsList, this.oldGoodsList) ||
         contrastList(getGiftList, this.oldGiftList) ||
@@ -3255,6 +3313,10 @@ export default {
     choceScheduleFun(){
       this.checkScheduleDialog = false
     },
+    shopQualityChange(val, row) {
+      (val == 1) && (row.price = 0)
+      this.priceChange(row)
+    },
   },
 }
 </script>

+ 1 - 1
src/views/exportTrade/customerInquiry/config/customerContact.json

@@ -8,7 +8,7 @@
   "addBtn": false,
   "delBtn": false,
   "align": "center",
-  "menuWidth": 100,
+  "menuWidth": 120,
   "refreshBtn": false,
   "showSummary": true,
   "column": [{

+ 102 - 30
src/views/exportTrade/purchaseContract/detailsPage.vue

@@ -24,7 +24,11 @@
             审核处理<i class="el-icon-arrow-down el-icon--right"></i>
           </el-button>
           <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item disabled>请核数据</el-dropdown-item>
+            <el-dropdown-item
+              :disabled="form.status > 0"
+              @click.native="pleaseCheck"
+              >请核数据</el-dropdown-item
+            >
             <el-dropdown-item disabled>审核进度</el-dropdown-item>
             <el-dropdown-item disabled>撤销请核</el-dropdown-item>
           </el-dropdown-menu>
@@ -34,8 +38,12 @@
             账单处理<i class="el-icon-arrow-down el-icon--right"></i>
           </el-button>
           <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item disabled>生成账单 </el-dropdown-item>
-            <el-dropdown-item disabled>申请退款</el-dropdown-item>
+            <el-dropdown-item @click.native="generateBill" :disabled="!form.id"
+              >申请货款</el-dropdown-item
+            >
+            <el-dropdown-item @click.native="viewBill" :disabled="!form.id"
+              >查看货款</el-dropdown-item
+            >
           </el-dropdown-menu>
         </el-dropdown>
         <el-dropdown style="margin-right: 8px;">
@@ -237,6 +245,39 @@
       </div>
     </div>
     <el-dialog
+      title="账单"
+      append-to-body
+      class="el-dialogDeep"
+      :visible.sync="financialAccountDialog"
+      width="60%"
+      :close-on-click-modal="false"
+      :destroy-on-close="true"
+      :close-on-press-escape="false"
+      v-dialog-drag
+    >
+      <financial-account
+        billType="申请"
+        :billData="billData"
+        itemType="采购"
+        @choceFun="choceFun"
+      >
+      </financial-account>
+    </el-dialog>
+    <el-dialog
+      title="申请记录"
+      append-to-body
+      class="el-dialogDeep"
+      :visible.sync="applicationDialog"
+      width="60%"
+      :close-on-click-modal="false"
+      :destroy-on-close="true"
+      :close-on-press-escape="false"
+      v-dialog-drag
+    >
+      <bill-application :billId="form.id" @choceApplication="choceApplication">
+      </bill-application>
+    </el-dialog>
+    <el-dialog
       title="导入商品"
       append-to-body
       class="el-dialogDeep"
@@ -313,8 +354,8 @@ import {
   delItem,
   getDeptLazyTree,
   getGoods,
-  getSysNo,
-  getSpecification
+  getSpecification,
+  pleaseCheck
 } from "@/api/exportTrade/purchaseContract";
 import _ from "lodash";
 import reportDialog from "@/components/report-dialog/main";
@@ -325,34 +366,15 @@ import {
   micrometerFormat,
   IntegerFormat
 } from "@/util/validate";
+import financialAccount from "@/components/finance/financialAccount";
+import billApplication from "@/components/bill/billApplication";
 export default {
   name: "detailsPageEdit",
   data() {
-    const validatePhone = (rule, value, callback) => {
-      if (value != "") {
-        if (isvalidatemobile(value)[0]) {
-          this.$message.error("手机号码格式不正确");
-          callback(new Error(isvalidatemobile(value)[1]));
-        } else {
-          callback();
-        }
-      } else {
-        callback();
-      }
-    };
-    const validateName = (rule, value, callback) => {
-      if (value != "") {
-        if (validatename(value)) {
-          this.$message.error("联系人格式不正确");
-          callback(new Error(validatename(value)));
-        } else {
-          callback();
-        }
-      } else {
-        callback();
-      }
-    };
     return {
+      billData: {}, //账单需要数据
+      financialAccountDialog: false,
+      applicationDialog: false,
       treeStyle: "height:" + (window.innerHeight - 315) + "px",
       switchDialog: false,
       form: {
@@ -611,7 +633,9 @@ export default {
   components: {
     reportDialog,
     feeInfo,
-    uploadFile
+    uploadFile,
+    financialAccount,
+    billApplication
   },
   async created() {
     if (this.detailData.id) {
@@ -945,6 +969,54 @@ export default {
         }
       });
     },
+    generateBill() {
+      this.financialAccountDialog = true;
+      this.billData = {
+        srcOrderno: this.form.orgOrderNo,
+        itemType: "销售",
+        corpsName: this.form.corpName,
+        corpId: this.form.corpId,
+        srcParentId: this.form.id,
+        currency: "CNY",
+        exchangeRate: "1",
+        taxRate: "0",
+        accDate: this.form.businesDate,
+        srcType: 1,
+        tradeType: "GN",
+        optionType: "GN"
+      };
+    },
+    choceFun() {
+      this.financialAccountDialog = false;
+    },
+    viewBill() {
+      this.applicationDialog = true;
+    },
+    //关闭记录
+    choceApplication() {
+      this.applicationDialog = false;
+    },
+    // 请核
+    pleaseCheck() {
+      this.$confirm("您确定提交此次申请吗?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(() => {
+        const data = {
+          id: this.form.id,
+          checkType: "cgqh",
+          url: "/exportTrade/purchaseContract/index",
+          pageStatus: "this.$store.getters.domPurStatus",
+          pageLabel: "采购(E)",
+          checkFlag: 2
+        };
+        pleaseCheck(data).then(res => {
+          this.$message.success("请核成功");
+          this.getDetail(this.form.id);
+        });
+      });
+    },
     //返回列表
     backToList() {
       let orderFeesList = this.$refs.feeInfo.submitData();

+ 103 - 5
src/views/exportTrade/salesContract/detailsPage.vue

@@ -24,7 +24,11 @@
             审核处理<i class="el-icon-arrow-down el-icon--right"></i>
           </el-button>
           <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item disabled>请核数据</el-dropdown-item>
+            <el-dropdown-item
+              :disabled="form.status > 0"
+              @click.native="pleaseCheck"
+              >请核数据</el-dropdown-item
+            >
             <el-dropdown-item disabled>审核进度</el-dropdown-item>
             <el-dropdown-item disabled>撤销请核</el-dropdown-item>
           </el-dropdown-menu>
@@ -34,8 +38,12 @@
             账单处理<i class="el-icon-arrow-down el-icon--right"></i>
           </el-button>
           <el-dropdown-menu slot="dropdown">
-            <el-dropdown-item disabled>生成账单 </el-dropdown-item>
-            <el-dropdown-item disabled>申请退款</el-dropdown-item>
+            <el-dropdown-item @click.native="generateBill" :disabled="!form.id"
+              >生成账单
+            </el-dropdown-item>
+            <el-dropdown-item @click.native="viewBill" :disabled="!form.id"
+              >查看账单</el-dropdown-item
+            >
           </el-dropdown-menu>
         </el-dropdown>
         <el-dropdown style="margin-right: 8px;">
@@ -509,6 +517,39 @@
       </div>
     </div>
     <el-dialog
+      title="账单"
+      append-to-body
+      class="el-dialogDeep"
+      :visible.sync="financialAccountDialog"
+      width="60%"
+      :close-on-click-modal="false"
+      :destroy-on-close="true"
+      :close-on-press-escape="false"
+      v-dialog-drag
+    >
+      <financial-account
+        billType="收费"
+        :billData="billData"
+        itemType="销售"
+        @choceFun="choceFun"
+      >
+      </financial-account>
+    </el-dialog>
+    <el-dialog
+      title="申请记录"
+      append-to-body
+      class="el-dialogDeep"
+      :visible.sync="applicationDialog"
+      width="60%"
+      :close-on-click-modal="false"
+      :destroy-on-close="true"
+      :close-on-press-escape="false"
+      v-dialog-drag
+    >
+      <bill-application :billId="form.id" @choceApplication="choceApplication">
+      </bill-application>
+    </el-dialog>
+    <el-dialog
       title="导入商品"
       append-to-body
       class="el-dialogDeep"
@@ -597,7 +638,8 @@ import {
   getPorts,
   getSpecification,
   saveSell,
-  getPricedetail
+  getPricedetail,
+  pleaseCheck
 } from "@/api/basicData/salesContract";
 import _ from "lodash";
 import reportDialog from "@/components/report-dialog/main";
@@ -608,6 +650,8 @@ import customerDialog from "@/components/customer-dialog/main";
 import priceLibrary from "@/components/price-Library/main";
 import propertyDialog from "@/components/property-dialog/main";
 import { dateFormat } from "@/util/date";
+import financialAccount from "@/components/finance/financialAccount";
+import billApplication from "@/components/bill/billApplication";
 import {
   productCal,
   sellingCal,
@@ -621,6 +665,9 @@ export default {
   name: "detailsPageEdit",
   data() {
     return {
+      billData: {}, //账单需要数据
+      financialAccountDialog: false,
+      applicationDialog: false,
       oldExchange: null,
       treeStyle: "height:" + (window.innerHeight - 315) + "px",
       configuration: {
@@ -1004,7 +1051,9 @@ export default {
     customerDialog,
     partDialog,
     priceLibrary,
-    propertyDialog
+    propertyDialog,
+    financialAccount,
+    billApplication
   },
   async created() {
     if (this.detailData.id) {
@@ -1850,6 +1899,55 @@ export default {
         }
       });
     },
+    generateBill() {
+      this.financialAccountDialog = true;
+      this.billData = {
+        srcOrderno: this.form.orgOrderNo,
+        itemType: "销售",
+        corpsName: this.form.corpName,
+        corpId: this.form.corpId,
+        srcParentId: this.form.id,
+        currency: "CNY",
+        exchangeRate: "1",
+        taxRate: "0",
+        accDate: this.form.businesDate,
+        srcType: 1,
+        tradeType: "GN",
+        optionType: "GN"
+      };
+    },
+    choceFun() {
+      this.financialAccountDialog = false;
+    },
+    viewBill() {
+      this.applicationDialog = true;
+    },
+    //关闭记录
+    choceApplication() {
+      this.applicationDialog = false;
+    },
+    // 请核
+    pleaseCheck() {
+      this.$confirm("您确定提交此次申请吗?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(() => {
+        const data = {
+          id: this.form.id,
+          checkType: "xsqh",
+          url: "/exportTrade/salesContract/index",
+          pageStatus: "this.$store.getters.domSaleStatus",
+          pageLabel: "销售(E)",
+          checkFlag: 2
+        };
+        pleaseCheck(data)
+          .then(res => {
+            this.$message.success("请核成功");
+            this.getDetail(this.form.id)
+          })
+      });
+    },
     //返回列表
     backToList() {
       let orderFeesList = this.$refs.feeInfo.submitData();

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 212 - 33
src/views/salaryManagement/primarySchool/detailsPage.vue


+ 2 - 2
src/views/salaryManagement/primarySchool/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <basic-container v-if="isShow" class="page-crad">
+    <basic-container v-show="isShow" class="page-crad">
       <avue-crud
         ref="crud"
         :option="option"
@@ -35,7 +35,7 @@
       </avue-crud>
     </basic-container>
     <detailPage
-      v-else
+      v-if="!isShow"
       ref="detail"
       @goBack="goBack"
       :detailData="detailData"

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä