2213980799@qq.com há 1 ano atrás
pai
commit
3b3b627b3b

+ 11 - 0
src/api/saleManage/saleorder.js

@@ -108,3 +108,14 @@ export async function submit(data) {
   }
   return Promise.reject(new Error(res.data.message));
 }
+
+/**
+ * 摘要卡片
+ */
+ export async function queryOrderNoCount(code) {
+  const res = await request.get(`/eom/saleorder/queryOrderNoCount/${code}`, {});
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}

+ 1 - 1
src/enum/dict.js

@@ -55,7 +55,7 @@ export default {
   项目类型: 'pro_projects_type',
   预算单位: 'pro_projects_budget_unit',
   市场活动类型: 'activity_type',
-  
+  计量单位:'measuring_uint'
 };
 
 export const numberList = [

+ 6 - 1
src/views/marketManagem/components/addOrEditDialog.vue

@@ -6,7 +6,7 @@
     :title="title"
     :append-to-body="false"
     :close-on-click-modal="false"
-    width="70%"
+    width="80%"
     :before-close="cancel"
     :fullscreen="fullscreen"
   >
@@ -22,6 +22,7 @@
       class="el-form-box"
       :model="form"
       label-width="0"
+      style="padding:0 15px "
     >
       <el-row :gutter="15">
         <el-descriptions title="基本信息" :column="4" border>
@@ -617,4 +618,8 @@ export default {
     width: 400px;
   }
 }
+:deep(.el-tabs__item){
+  font-size: 16px;
+  font-weight: 800;
+}
 </style>

+ 11 - 62
src/views/marketManagem/components/companyList.vue

@@ -74,56 +74,20 @@
             <el-input v-model="row.place"></el-input>
           </el-form-item>
         </template>
-
-        <template
-          v-slot:materialName="{ row, $index }"
-          v-if="dialogType !== 'view'"
-        >
-          <el-form-item :prop="'datasource.' + $index + '.materialName'">
-            <el-input v-model="row.materialName">
-              <template slot="append">
-                <el-link
-                  type="primary"
-                  :underline="false"
-                  @click.native="materialOpen(row, $index)"
-                >
-                  选择</el-link
-                >
-              </template>
-            </el-input>
-          </el-form-item>
-        </template>
-        <template
-          v-slot:materialNum="{ row, $index }"
-          v-if="dialogType !== 'view'"
-        >
-          <el-form-item :prop="'datasource.' + $index + '.materialNum'">
-            <el-input type="number" v-model="row.materialNum"></el-input>
-          </el-form-item>
-        </template>
-        <template
-          v-slot:ownershipId="{ row, $index }"
-          v-if="dialogType !== 'view'"
-        >
-          <el-form-item :prop="'datasource.' + $index + '.ownershipId'">
-            <el-cascader
-              class="ele-block"
-              :options="organizationList"
-              placeholder="请选择"
-              :props="defaultProps"
-              ref="deptRef"
-              :show-all-levels="false"
-              v-model="row.ownershipId"
-              @change="ownershipChange($index)"
-              clearable
-            ></el-cascader>
+        <template v-slot:text="{ row, $index }" v-if="dialogType !== 'view'">
+          <el-form-item :prop="'datasource.' + $index + '.text'">
+            <el-input v-model="row.text"></el-input>
           </el-form-item>
         </template>
+   
+   
+    
         <template v-slot:remark="{ row, $index }" v-if="dialogType !== 'view'">
           <el-form-item :prop="'datasource.' + $index + '.remark'">
             <el-input type="textarea" v-model="row.remark"></el-input>
           </el-form-item>
         </template>
+   
       </ele-pro-table>
     </el-form>
     <productList
@@ -203,29 +167,14 @@ export default {
           slot: 'place'
         },
         {
-          prop: 'materialName',
-          label: '物料名称',
-          align: 'center',
-          showOverflowTooltip: true,
-          minWidth: 200,
-          slot: 'materialName'
-        },
-        {
-          prop: 'materialNum',
-          label: '数量',
-          align: 'center',
-          showOverflowTooltip: true,
-          width: 100,
-          slot: 'materialNum'
-        },
-        {
-          prop: 'ownershipName',
-          label: '权属单位',
+          prop: 'text',
+          label: '参观行程',
           align: 'center',
           showOverflowTooltip: true,
           minWidth: 200,
-          slot: 'ownershipId'
+          slot: 'text'
         },
+       
 
         {
           prop: 'cost',

+ 19 - 0
src/views/marketManagem/components/conferenceList.vue

@@ -124,6 +124,17 @@
             <el-input type="textarea" v-model="row.remark"></el-input>
           </el-form-item>
         </template>
+        <template v-slot:unit="{ row, $index }" v-if="dialogType !== 'view'">
+          <el-form-item :prop="'datasource.' + $index + '.unit'">
+            <DictSelection
+                dictName="计量单位"
+                clearable
+                v-model="row.unit"
+              >
+              </DictSelection> 
+
+          </el-form-item>
+        </template>
       </ele-pro-table>
     </el-form>
     <productList
@@ -218,6 +229,14 @@ export default {
           width: 100,
           slot: 'materialNum'
         },
+        {
+          prop: 'unit',
+          label: '单位',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100,
+          slot: 'unit'
+        },
         {
           prop: 'ownershipId',
           label: '权属单位',

+ 36 - 3
src/views/marketManagem/components/mealList.vue

@@ -48,9 +48,9 @@
           <el-form-item :prop="'tableList.' + $index + '.dataTime'">
             <el-date-picker
               v-model="row.dataTime"
-              type="date"
-              placeholder="选择日期"
-              value-format="yyyy-MM-dd"
+              type="datetime"
+              placeholder="选择时间"
+              value-format="yyyy-MM-dd HH:mm:ss"
             >
             </el-date-picker>
           </el-form-item>
@@ -123,6 +123,23 @@
             <el-input type="textarea" v-model="row.remark"></el-input>
           </el-form-item>
         </template>
+
+        <template v-slot:name="{ row, $index }" v-if="dialogType !== 'view'">
+          <el-form-item :prop="'datasource.' + $index + '.name'">
+            <el-input v-model="row.name"></el-input>
+          </el-form-item>
+        </template>
+        <template v-slot:unit="{ row, $index }" v-if="dialogType !== 'view'">
+          <el-form-item :prop="'datasource.' + $index + '.unit'">
+            <DictSelection
+                dictName="计量单位"
+                clearable
+                v-model="row.unit"
+              >
+              </DictSelection> 
+
+          </el-form-item>
+        </template>
       </ele-pro-table>
     </el-form>
     <productList
@@ -177,6 +194,14 @@ export default {
           showOverflowTooltip: true,
           fixed: 'left'
         },
+        {
+          prop: 'name',
+          label: '名称',
+          align: 'center',
+          showOverflowTooltip: true,
+          width: 100,
+          slot: 'name'
+        },
         {
           prop: 'dataTime',
           label: '日期',
@@ -217,6 +242,14 @@ export default {
           width: 100,
           slot: 'materialNum'
         },
+        {
+          prop: 'unit',
+          label: '单位',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100,
+          slot: 'unit'
+        },
         {
           prop: 'ownershipName',
           label: '权属单位',

+ 9 - 0
src/views/marketManagem/components/putUpList.vue

@@ -103,6 +103,7 @@
             </el-date-picker>
           </el-form-item>
         </template>
+     
       </ele-pro-table>
     </el-form>
   </div>
@@ -200,6 +201,14 @@ export default {
           minWidth: 120,
           slot: 'cost'
         },
+        {
+          prop: 'remark',
+          label: '备注',
+          minWidth: 200,
+          align: 'center',
+          showOverflowTooltip: true,
+          slot: 'remark'
+        },
         {
           columnKey: 'action',
           slot: 'action',

+ 20 - 0
src/views/marketManagem/components/souvenirList.vue

@@ -124,7 +124,19 @@
             <el-input type="textarea" v-model="row.remark"></el-input>
           </el-form-item>
         </template>
+        <template v-slot:unit="{ row, $index }" v-if="dialogType !== 'view'">
+          <el-form-item :prop="'datasource.' + $index + '.unit'">
+            <DictSelection
+                dictName="计量单位"
+                clearable
+                v-model="row.unit"
+              >
+              </DictSelection> 
+
+          </el-form-item>
+        </template>
       </ele-pro-table>
+   
     </el-form>
     <productList
       :currentIndex="-1"
@@ -211,6 +223,14 @@ export default {
           width: 100,
           slot: 'materialNum'
         },
+        {
+          prop: 'unit',
+          label: '单位',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100,
+          slot: 'unit'
+        },
         {
           prop: 'ownershipName',
           label: '权属单位',

+ 6 - 1
src/views/marketManagem/components/viewDialog.vue

@@ -5,7 +5,7 @@
     :visible.sync="addOrEditDialogFlag"
     :append-to-body="false"
     :close-on-click-modal="false"
-    width="70%"
+    width="80%"
     :fullscreen="fullscreen"
   >
     <template slot="title">
@@ -34,6 +34,7 @@
       :model="form"
       label-width="0"
       v-if="activeComp=='main'"
+      style="padding:0px 15px"
     >
       <el-row :gutter="15">
         <el-descriptions title="基本信息" :column="4">
@@ -312,4 +313,8 @@ export default {
 :deep(.el-descriptions__title) {
   color: #1890ff;
 }
+:deep(.el-tabs__item){
+  font-size: 16px;
+  font-weight: 800;
+}
 </style>

+ 19 - 0
src/views/marketManagem/components/visitList.vue

@@ -122,6 +122,17 @@
             <el-input type="textarea" v-model="row.remark"></el-input>
           </el-form-item>
         </template>
+        <template v-slot:unit="{ row, $index }" v-if="dialogType !== 'view'">
+          <el-form-item :prop="'datasource.' + $index + '.unit'">
+            <DictSelection
+                dictName="计量单位"
+                clearable
+                v-model="row.unit"
+              >
+              </DictSelection> 
+
+          </el-form-item>
+        </template>
       </ele-pro-table>
     </el-form>
     <productList
@@ -216,6 +227,14 @@ export default {
           width: 100,
           slot: 'materialNum'
         },
+        {
+          prop: 'unit',
+          label: '单位',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100,
+          slot: 'unit'
+        },
         {
           prop: 'ownershipId',
           label: '权属单位',

+ 31 - 18
src/views/saleManage/contact/components/drawer.vue

@@ -20,17 +20,20 @@
         <headerTitle title="摘要卡片" style="margin-top: 15px"></headerTitle>
 
         <div class="card">
-          <span>销售订单总额:</span>
-          <span> 退货单总额:</span>
-          <span>回款总额:</span>
-          <span> 退款总额:</span>
-          <span>待回款总额:</span>
+          <span
+            >销售订单总额:
+            {{ contactCountData.totalAmountSaleOrder }}
+          </span>
+          <span>
+            退货单总额: {{ contactCountData.totalAmountSaleOrderRecord }}</span
+          >
+          <span>回款总额: {{ contactCountData.totalAmountReturn }}</span>
+          <span> 退款总额: {{ contactCountData.totalAmountRecord }}</span>
+          <span
+            >待回款总额: {{ contactCountData.totalAmountTreatReturn }}</span
+          >
         </div>
-        <el-tabs
-          v-model="activeName"
-
-          style="height: calc(100% - 124px)"
-        >
+        <el-tabs v-model="activeName" style="height: calc(100% - 124px)">
           <el-tab-pane label="详细信息" name="详细信息">
             <contactInfo ref="contactInfoRef"></contactInfo>
           </el-tab-pane>
@@ -107,7 +110,6 @@
               :id="row.base.processInstanceId"
             ></bpmDetail>
           </el-tab-pane>
-
         </el-tabs>
       </div>
 
@@ -158,7 +160,11 @@
 </template>
 
 <script>
-import { contactDetail, updateContactDynamics,queryContactIdCount } from '@/api/saleManage/contact';
+import {
+  contactDetail,
+  updateContactDynamics,
+  queryContactIdCount
+} from '@/api/saleManage/contact';
 import dictMixins from '@/mixins/dictMixins';
 import contactInfo from './darwerComponents/contactInfo.vue';
 
@@ -194,7 +200,7 @@ import receivableManage from '@/views/financialManage/receivableManage/index.vue
 import followList from './darwerComponents/followList.vue';
 import TinymceEditor from '@/components/TinymceEditor/index.vue';
 import { mapGetters } from 'vuex';
-import bpmDetail from "@/views/bpm/processInstance/detail.vue";
+import bpmDetail from '@/views/bpm/processInstance/detail.vue';
 
 export default {
   mixins: [dictMixins],
@@ -228,8 +234,14 @@ export default {
       content: '',
       commitCommentVisible: false,
       inputComment: '',
-      contactCountData:{},
-      pageName:'myList'
+      contactCountData: {
+        totalAmountSaleOrderRecord: '', //退货单总额:
+        totalAmountRecord: '', //退款总额
+        totalAmountTreatReturn: '', //待回款总额
+        totalAmountSaleOrder: '', //销售订单总额
+        totalAmountReturn: '' //回款总额
+      },
+      pageName: 'myList'
     };
   },
   created() {
@@ -239,10 +251,11 @@ export default {
     ...mapGetters(['user'])
   },
   methods: {
-    async open(row,pageName) {
+    async open(row, pageName) {
       this.row = await contactDetail(row.id);
-      this.pageName=pageName
-      // this.contactCountData=await queryContactIdCount(row.id)
+      this.pageName = pageName;
+      const contactCountData = await queryContactIdCount(row.id);
+      this.contactCountData=contactCountData.data
       this.drawer = true;
       this.$nextTick(() => {
         this.$refs.contactInfoRef.init(this.row.base);

+ 0 - 1
src/views/saleManage/saleOrder/components/addDialog.vue

@@ -529,7 +529,6 @@ export default {
         ],
         payAmount: [{ required: true, message: '请输入', trigger: 'blur' }]
       },
-
       // 提交状态
       loading: false,
       // 是否是修改

+ 37 - 10
src/views/saleManage/saleOrder/components/drawer.vue

@@ -14,12 +14,26 @@
     <headerTitle title="摘要卡片" style="margin-top: 15px"></headerTitle>
 
     <div class="card">
-      <span>订单数量:</span>
-      <span>订单总金额:</span>
-      <span>应收款:</span>
-      <span>发货数量:</span>
-      <span>退货数量:</span>
-      <span> 退货金额:</span>
+      <span>订单数量:
+        {{ orderNoCountData.saleOrderNumber }}
+      </span>
+      <span>订单总金额:
+        {{ orderNoCountData.totalAmountSaleOrder }}
+      </span>
+      <span>应收款:
+        {{ orderNoCountData.receivable }}
+      </span>
+      <span>发货数量:
+        {{ orderNoCountData.sendNumber }}
+
+      </span>
+      <span>退货数量:
+        {{ orderNoCountData.returnNumber }}
+
+      </span>
+      <span> 退货金额:
+        {{ orderNoCountData.returnAmount }}
+      </span>
       <!-- <span>预计结单日期:</span> -->
     </div>
     <div class="ele-body" style="height: calc(100% - 124px)">
@@ -76,8 +90,7 @@
           v-if="row.processInstanceId"
         >
           <bpmDetail
-            
-            v-if="row.processInstanceId&&activeName=='审批流程'"
+            v-if="row.processInstanceId && activeName == '审批流程'"
             :id="row.processInstanceId"
             :key="row.id"
           ></bpmDetail>
@@ -88,7 +101,10 @@
 </template>
 
 <script>
-import { getSaleOrderDetail } from '@/api/saleManage/saleorder';
+import {
+  getSaleOrderDetail,
+  queryOrderNoCount
+} from '@/api/saleManage/saleorder';
 
 import dictMixins from '@/mixins/dictMixins';
 
@@ -137,7 +153,15 @@ export default {
       title: '',
       activeName: '详细信息',
       row: { contactId: '' },
-      content: ''
+      content: '',
+      orderNoCountData: {
+        saleOrderNumber: '', //订单数量
+        totalAmountSaleOrder: '', //订单总金额
+        sendNumber: '', //发货数量
+        receivable: '', //应收款
+        returnNumber: '', //退货数量
+        returnAmount: '' //退货金额
+      }
     };
   },
   created() {},
@@ -145,9 +169,12 @@ export default {
   methods: {
     async open(row) {
       this.row = await getSaleOrderDetail(row.id);
+      this.orderNoCountData = await queryOrderNoCount(row.orderNo);
+
       this.drawer = true;
       this.$nextTick(() => {
         this.$refs.saleOrderInfoRef.init(this.row);
+
         // this.$refs.followListRef.init(row);
         // this.$refs.businessAddTable &&
         //   this.$refs.businessAddTable.putTableValue(