Tang 2 år sedan
förälder
incheckning
bf0123a16f

+ 9 - 0
src/newApi/institution.js

@@ -39,6 +39,15 @@ export default {
             method: 'get',
         })
     },
+    //导出职能机构列表
+    topinstitutionlistExport(data) {
+        return request({
+            url: '/top/institution/listExport',
+            method: 'get',
+            params: data
+        })
+    },
+
     // ------
     // ----------------------------------------------------
     // ------

+ 12 - 1
src/utils/index.js

@@ -392,7 +392,7 @@ export function camelCase(str) {
 export function isNumberStr(str) {
   return /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g.test(str);
 }
-
+//导出数据
 export function exportFn(str, name) {
   let url = process.env.VUE_APP_BASE_API + "sys/common/download?fileName=" + str;
   let link = document.createElement("a");
@@ -403,6 +403,17 @@ export function exportFn(str, name) {
   link.click();
   link.remove();
 }
+//下载模板
+export function downFn(str, name = 'xx.xlsx') {
+  let url = process.env.VUE_APP_IMG_API + "/" + str;
+  let link = document.createElement("a");
+  let fileName = name;
+  document.body.appendChild(link);
+  link.href = url;
+  link.dowmload = fileName;
+  link.click();
+  link.remove();
+}
 
 // 保留x位小数
 export function checkNum(val, int = 2) {

+ 2 - 2
src/utils/request.js

@@ -7,9 +7,9 @@ import { paramMate } from "@/utils/common";
 
 axios.defaults.headers["Content-Type"] = "application/json;charset=utf-8";
 // 创建axios实例
-// export const baseURL = process.env.VUE_APP_BASE_API
+export const baseURL = process.env.VUE_APP_BASE_API
 // export const baseURL = 'https://ptapi.gdzzkj.net/'
-export const baseURL = "http://192.168.1.24:7077/";
+// export const baseURL = "http://192.168.1.7:7077/";
 export const BASE_IMG_URL = process.env.VUE_APP_IMG_API;
 const service = axios.create({
   // axios中请求配置有baseURL选项,表示请求URL公共部分

+ 53 - 5
src/views/financed/accountsPayable/supplierSettlement/index.vue

@@ -46,12 +46,15 @@
             >添加记录</el-button
           >
         </el-popover>
+        <el-button size="small" type="primary" @click="batchAudit"
+          >批量提交审核</el-button
+        >
         <el-button size="small" type="warning" @click="batchDel"
           >批量删除</el-button
         >
-        <el-button size="small" v-hasRole="derivePermission"
+        <!-- <el-button size="small" v-hasRole="derivePermission"
           >导出excel</el-button
-        >
+        > -->
       </template>
       <template slot="orderPrice" slot-scope="props">
         <div v-if="props.scope.row['settleMoney']">
@@ -78,7 +81,8 @@
           :disabled="
             !(
               ($store.state.user.name == 'admin' &&
-                props.scope.row.checkStatus == 2) ||
+                (props.scope.row.checkStatus == 2 ||
+                  props.scope.row.checkStatus == 7)) ||
               props.scope.row.checkStatus == 4 ||
               props.scope.row.checkStatus == 7
             )
@@ -115,12 +119,14 @@
         >
         <!-- :disabled="props.scope.row.checkStatus !== 6" -->
         <el-button
+          :disabled="props.scope.row.checkStatus !== 6"
           type="text"
           class="warning_text_btn"
           @click="doPrint(1, props.scope.row)"
           >单据打印</el-button
         >
         <el-button
+          :disabled="props.scope.row.checkStatus !== 6"
           type="text"
           class="warning_text_btn"
           @click="doPrint(2, props.scope.row)"
@@ -259,6 +265,7 @@ export default {
             { label: "待支付", value: 4 },
             { label: "支付失败", value: 5 },
             { label: "已结算", value: 6 },
+            { label: "支付中", value: 8 },
           ],
         },
         {
@@ -352,6 +359,11 @@ export default {
           hidden: true,
           scope: "aTimeList",
         },
+        {
+          label: "审核意见",
+          hidden: true,
+          scope: "checkReason",
+        },
       ],
       tableData: [], //表单数据
       total: 0, //一共多少条
@@ -393,6 +405,9 @@ export default {
           case 6:
             a = "已结算";
             break;
+          case 8:
+            a = "支付中";
+            break;
           default:
             break;
         }
@@ -473,7 +488,6 @@ export default {
           this.tableData = res.rows;
           this.total = res.total;
           this.navText.index = res.total;
-          
         })
         .finally(() => {
           this.loading = false;
@@ -482,6 +496,40 @@ export default {
     init() {
       this.search(2);
     },
+    batchAudit() {
+      if (this.$refs.tableList.allCheckData.length > 0) {
+        const A = this.$refs.tableList.allCheckData
+          .filter((i) => {
+            return (
+              (this.$store.state.user.name == "admin" &&
+                (i.checkStatus == 2 || i.checkStatus == 7)) ||
+              i.checkStatus == 7
+            );
+          })
+          .map((i) => i.settleId);
+        if (A.length > 0) {
+          this.audit(A);
+        } else {
+          this.$message.warning("当前所勾选的数据不可审核");
+        }
+      } else {
+        this.$message.warning("请勾选需批量审核的数据");
+      }
+    },
+    audit(ids) {
+      this.$confirm("确定批量提交审核?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.$api.settlebatchsubmitcheck(ids).then((res) => {
+            this.$message.success("操作成功");
+            this.search(3);
+          });
+        })
+        .catch(() => {});
+    },
     batchDel() {
       if (this.$refs.tableList.allCheckData.length > 0) {
         const A = this.$refs.tableList.allCheckData
@@ -509,7 +557,7 @@ export default {
         type: "warning",
       })
         .then(() => {
-          this.$api.settlebatchdelete({ settleIds: ids }).then((res) => {
+          this.$api.settlebatchdelete(ids).then((res) => {
             this.$message.success("删除成功");
             this.search(3);
           });

+ 1 - 1
src/views/financed/accountsPayable/supplierSettlement/payMent.vue

@@ -112,7 +112,7 @@ export default {
     },
     close() {},
     submitForm() {
-      this.$confirm("此操作将永久删除该文件, 是否继续?", "提示", {
+      this.$confirm("是否支付?", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
         type: "warning",

+ 8 - 16
src/views/financed/accountsPayable/supplierSettlement/quantitySettleMent/quantityTable.vue

@@ -59,6 +59,7 @@
             >批量导入</el-button
           >
           <el-button
+            @click="dowmFunc"
             size="small"
             v-if="activeData.type == 1 || activeData.type == 2"
             >导入模板</el-button
@@ -127,6 +128,7 @@
 </template>
 
 <script>
+import { downFn } from "@/utils/index.js";
 import tableList from "@/components/tableList";
 import changeSupplier from "./changeSupplier.vue";
 export default {
@@ -312,6 +314,10 @@ export default {
           });
         }
       } else {
+        if (type == 1 && this.formData.settleOrderVos?.length == 0) {
+          this.$message.warning("请添加供应商结算数据");
+          return;
+        }
         let data = Object.assign({}, this.formData);
         data.settleType = 1;
         data.status = type;
@@ -354,22 +360,8 @@ export default {
         });
     },
     //导出/下载方法
-    dowmFunc(res, k) {
-      return;
-      return new Promise((resolve, reject) => {
-        let url =
-          baseUrls.baseURL + "common/download?fileName=" + res.data[k].msg;
-        let link = document.createElement("a");
-        let fileName = "导入模板" + ".xlsx";
-        document.body.appendChild(link);
-        link.href = url;
-        link.dowmload = fileName;
-        link.click();
-        link.remove();
-        setTimeout(() => {
-          resolve();
-        }, 200);
-      });
+    dowmFunc() {
+      downFn("oss/images/file/20230815/1692066440379.xls", ".xls");
     },
   },
   computed: {

+ 17 - 6
src/views/financed/components/dislogOrderDetails.vue

@@ -154,6 +154,7 @@ export default {
         { label: "下单客户", key: "purchaseOrg" },
         { label: "订单来源", key: "orderOrg" },
         { label: "业务归属", key: "schemeName" },
+        { label: "业务类型", key: "businessNames" },
         { label: "订单日期", key: "buyTime", type: "time" },
         { label: "订单金额", key: "orderPrice", type: "money" },
         { label: "已收账款", key: "orderReceived", type: "money" },
@@ -164,11 +165,22 @@ export default {
         { label: "实际账款", key: "orderPractical", type: "money" },
         { label: "成本", key: "orderCost", type: "money" },
         { label: "盈亏", key: "orderProfit", type: "money" },
-        { label: "转账凭证", key: "attachmentList", type: "image" },
-        { label: "附件", type: "dowm" },
+        {
+          label: "完单状态",
+          key: "finishStatus",
+          type: "options",
+          options: [
+            { label: "已完单", value: 1 },
+            { label: "未完单", value: 0 },
+          ],
+        },
         { label: "佣金", key: "pretax", type: "pretax" },
-        { label: "佣金支付方式", key: "", type: "" },
+        { label: "佣方式", key: "", type: "" },
         { label: "佣金状态", key: "", type: "" },
+        { label: "分成金额", key: "", type: "" },
+        { label: "分成审核", key: "", type: "" },
+        { label: "发票金额", key: "", type: "money" },
+        { label: "发票申请时间", key: "", type: "time" },
         {
           label: "发票状态",
           key: "invoiceStatus",
@@ -184,9 +196,8 @@ export default {
             },
           ],
         },
-        { label: "发票申请时间", key: "", type: "time" },
-        { label: "发票金额", key: "", type: "money" },
-        { label: "完单状态", key: "", type: "money" },
+        { label: "转账凭证", key: "attachmentList", type: "image" },
+        { label: "附件", type: "dowm" },
         { label: "下单备注", key: "remark" },
         { label: "审核意见", key: "financeRemark" },
       ],

+ 0 - 17
src/views/financed/components/studentDetails.vue

@@ -88,18 +88,6 @@ export default {
     return {
       //搜索
       formList: [
-        {
-          prop: "educationTypeId",
-          placeholder: "教育类型",
-          scope: "educationType",
-          schemeName: true,
-        },
-        {
-          prop: "businessId",
-          placeholder: "业务层次",
-          scope: "businessLevel",
-          edu: "educationTypeId",
-        },
         {
           prop: "checkStatus",
           placeholder: "订单状态",
@@ -153,11 +141,6 @@ export default {
           prop: "majorName",
           hidden: true,
         },
-        {
-          label: "业务",
-          prop: "businessName",
-          hidden: true,
-        },
         {
           label: "原价(元)",
           prop: "goodsPrice",

+ 1 - 1
src/views/financed/orderManageList/independent/index.vue

@@ -301,7 +301,7 @@ export default {
       ],
       loading: false, //当前表单加载是否加载动画
       navText: {
-        title: "订单管理",
+        title: "独立订单",
         index: 0,
         ch: "条",
         num: true,

+ 1 - 1
src/views/financed/orderManageList/operate/index.vue

@@ -390,7 +390,7 @@ export default {
       ],
       loading: false, //当前表单加载是否加载动画
       navText: {
-        title: "订单管理",
+        title: "代操作订单",
         index: 0,
         ch: "条",
         num: true,

+ 1 - 0
src/views/systemManagement/costCategory/index.vue

@@ -80,6 +80,7 @@ export default {
         this.formData = {
           pageSize: 10,
           pageNum: 1,
+          status:1
         };
         this.$nextTick(() => {
           this.$refs.tableList.clearMoreActive();

+ 1 - 0
src/views/systemManagement/costClassification/index.vue

@@ -80,6 +80,7 @@ export default {
         this.formData = {
           pageSize: 10,
           pageNum: 1,
+          status:1
         };
         this.$nextTick(() => {
           this.$refs.tableList.clearMoreActive();

+ 13 - 7
src/views/systemManagement/functional/index.vue

@@ -46,6 +46,7 @@
 </template>
 
 <script>
+import { exportFn } from "@/utils/index.js";
 import dislog from "./dislog.vue";
 import searchBoxNew from "@/components/searchBoxNew";
 import tableList from "@/components/tableList";
@@ -107,6 +108,7 @@ export default {
         this.formData = {
           pageSize: 10,
           pageNum: 1,
+          status: 1,
         };
         this.$nextTick(() => {
           this.$refs.tableList.clearMoreActive();
@@ -149,10 +151,16 @@ export default {
         .catch(() => {});
     },
     excelPort() {
-      if (this.$refs.tableList.allCheckData.length === 0) {
-        this.$message.warning("请勾选数据");
-        return;
-      }
+      let data = Object.assign({}, this.formData);
+      delete data.pageNum;
+      delete data.pageSize;
+      this.$api.topinstitutionlistExport(data).then((res) => {
+        if (res.msg) {
+          exportFn(res.msg, `导出数据`);
+        } else {
+          this.$message.error("导出失败");
+        }
+      });
     },
     remove() {
       if (this.$refs.tableList.allCheckData.length === 0) {
@@ -167,9 +175,7 @@ export default {
         .then(() => {
           this.$api
             .edittopinstitutiondeleteBatch({
-              instIds: this.$refs.tableList.allCheckData.map(
-                (i) => i.instId
-              ),
+              instIds: this.$refs.tableList.allCheckData.map((i) => i.instId),
             })
             .then(() => {
               this.$message.success("批量删除成功");

+ 66 - 40
src/views/systemSettings/menu/index.vue

@@ -154,40 +154,53 @@
             <el-form-item label="菜单类型" prop="menuType">
               <el-radio-group v-model="form.menuType">
                 <el-radio label="M">目录</el-radio>
-                <el-radio label="C" :disabled="form.menuType == 'M' && form.children.length > 0">菜单</el-radio>
+                <el-radio
+                  label="C"
+                  :disabled="form.menuType == 'M' && form.children.length > 0"
+                  >菜单</el-radio
+                >
                 <el-radio label="F">按钮</el-radio>
               </el-radio-group>
             </el-form-item>
           </el-col>
           <el-col :span="24">
             <el-form-item v-if="form.menuType != 'F'" label="菜单图标">
-              <el-popover
-                placement="bottom-start"
-                width="460"
-                trigger="click"
-                @show="$refs['iconSelect'].reset()"
-              >
-                <IconSelect ref="iconSelect" @selected="selected" />
-                <el-input
-                  slot="reference"
-                  v-model="form.icon"
-                  placeholder="点击选择图标"
-                  readonly
+              <div class="dis_flex">
+                <el-popover
+                  placement="bottom-start"
+                  width="460"
+                  trigger="click"
+                  @show="$refs['iconSelect'].reset()"
+                >
+                  <IconSelect ref="iconSelect" @selected="selected" />
+                  <el-input
+                    slot="reference"
+                    v-model="form.icon"
+                    placeholder="点击选择图标"
+                    readonly
+                  >
+                    <svg-icon
+                      v-if="form.icon"
+                      slot="prefix"
+                      :icon-class="form.icon"
+                      class="el-input__icon"
+                      style="height: 32px; width: 16px"
+                    />
+                    <i
+                      v-else
+                      slot="prefix"
+                      class="el-icon-search el-input__icon"
+                    />
+                  </el-input>
+                </el-popover>
+                <el-button
+                  v-if="form.icon && form.icon != '#'"
+                  type="danger"
+                  size="small"
+                  @click="form.icon = '#'"
+                  >清空</el-button
                 >
-                  <svg-icon
-                    v-if="form.icon"
-                    slot="prefix"
-                    :icon-class="form.icon"
-                    class="el-input__icon"
-                    style="height: 32px; width: 16px"
-                  />
-                  <i
-                    v-else
-                    slot="prefix"
-                    class="el-icon-search el-input__icon"
-                  />
-                </el-input>
-              </el-popover>
+              </div>
             </el-form-item>
           </el-col>
           <el-col :span="12">
@@ -308,10 +321,10 @@ export default {
         menuName: undefined,
         visible: undefined,
       },
-      showListMenu:[],
+      showListMenu: [],
       // 表单参数
       form: {
-        children : []
+        children: [],
       },
       // 表单校验
       rules: {
@@ -348,7 +361,7 @@ export default {
       this.loading = true;
       this.$api.getsystemmenu(this.queryParams).then((response) => {
         this.menuList = this.handleTree(response.data, "menuId");
-        this.showListMenu = response.data
+        this.showListMenu = response.data;
         this.loading = false;
       });
     },
@@ -377,9 +390,9 @@ export default {
     // },
     /** 查询菜单下拉树结构 */
     getTreeselect() {
-      this.$api.getsystemmenu().then(response => {
+      this.$api.getsystemmenu().then((response) => {
         this.menuOptions = [];
-        const menu = { menuId: 0, menuName: '主类目', children: [] };
+        const menu = { menuId: 0, menuName: "主类目", children: [] };
         menu.children = this.handleTree(response.data, "menuId");
         this.menuOptions.push(menu);
       });
@@ -389,7 +402,11 @@ export default {
       if (row.menuType == "F") {
         return "";
       }
-      console.log("this.visibleOptions, row.visible",this.visibleOptions, row.visible)
+      console.log(
+        "this.visibleOptions, row.visible",
+        this.visibleOptions,
+        row.visible
+      );
       return this.selectDictLabel(this.visibleOptions, row.visible);
     },
     // 菜单状态字典翻译
@@ -407,7 +424,7 @@ export default {
     // 表单重置
     reset() {
       this.form = {
-        children:[],
+        children: [],
         menuId: undefined,
         parentId: 0,
         menuName: undefined,
@@ -434,7 +451,7 @@ export default {
     handleAdd(row) {
       this.reset();
       this.getTreeselect();
-      if (row != null && row.menuId && row.menuType === 'M') {
+      if (row != null && row.menuId && row.menuType === "M") {
         this.form.parentId = row.menuId;
       } else {
         this.form.parentId = 0;
@@ -444,14 +461,14 @@ export default {
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
-      var self = this
+      var self = this;
       this.reset();
       this.getTreeselect();
       this.$api.enutreeselectmenu(row.menuId).then((response) => {
-        var children = self.showListMenu.filter(item => {
-          return item.parentId === response.data.menuId
-        })
-        response.data.children = children
+        var children = self.showListMenu.filter((item) => {
+          return item.parentId === response.data.menuId;
+        });
+        response.data.children = children;
         self.form = response.data;
         self.open = true;
         self.title = "修改菜单";
@@ -503,3 +520,12 @@ export default {
   },
 };
 </script>
+<style lang="scss" scoped>
+.dis_flex {
+  display: flex;
+  & > span {
+    flex: 1;
+    margin-right: 10px;
+  }
+}
+</style>