Kaynağa Gözat

Merge branch 'pengyouhao_dev'

pengyh 1 yıl önce
ebeveyn
işleme
44a52e6d0c

+ 40 - 7
src/views/mallManagement/configCenter/slideshowConfig/index.vue

@@ -76,6 +76,7 @@ export default {
         imgSrc: [],
         state: true,
         sortNum: '',
+		port: '',
         type: '',
         goodsId: '',
         appId: '',
@@ -139,20 +140,52 @@ export default {
             rules: []
           }
         },
+		{
+		  md: 8,
+		  isShow: true,
+		  name: 'el-radio',
+		  options: [
+			{ label: '轮播图', value: 'SHOP' },
+		    { label: '以旧换新入口', value: 'YJHX' },
+		    { label: '二手商城', value: 'ESHOP' }
+		  ],
+		  attributes: { filterable: true, placeholder: '请选择' },
+		  formItemAttributes: {
+		    label: '类型',
+		    prop: 'port',
+		    rules: []
+		  },
+		   events: {
+			   change: e=>{
+				   if(e=='YJHX'){
+					   this.formData.type = 4
+				   }else{
+					   this.formData.type = 1
+				   }
+			   }
+		   }
+		},
         {
           md: 8,
           isShow: true,
-          name: 'el-radio',
-          options: [
-            { label: '商品链接', value: 1 },
-            // { label: '凡科活动链接', value: 2 },
-            { label: '专区活动链接', value: 3 }
-          ],
-          attributes: { filterable: true, placeholder: '请选择' },
+          name: 'slot-component',
+      //     options: [
+						// { label: '分类列表', value: 1 },
+      //       { label: '商品链接', value: 1 },
+      //       // { label: '凡科活动链接', value: 2 },
+      //       { label: '专区活动链接', value: 3 }
+      //     ],
           formItemAttributes: {
             label: '链接类型',
             prop: 'type',
             rules: []
+          },render: (h, { props, onInput }) => {
+            var { value } = props
+            return <el-radio-group v-model={this.formData.type}>
+				{this.formData.port == 'YJHX'?<el-radio label={4}>分类列表</el-radio>:null}
+				<el-radio label={3}>专区活动</el-radio>
+				<el-radio label={1}>商品链接</el-radio>
+			</el-radio-group>
           }
         },
         ...(() => {

+ 17 - 1
src/views/mallManagement/goods/classify_index/index.vue

@@ -26,6 +26,11 @@
 				      </template>
 				    </el-table-column>
 				    <el-table-column align="center" prop="createTime" label="创建时间" min-width="160"></el-table-column>
+						<el-table-column align="center" prop="createTime" label="服务首页展示">
+							<template slot-scope="scope" v-if="scope.row.level == 1">
+							  {{ scope.row.isServiceShow ? '展示':'不展示' }}
+							</template>
+						</el-table-column>
 				    <!-- <el-table-column align="center" prop="goodsNum" label="商品数"></el-table-column> -->
 				    <el-table-column align="center" prop="sortNum" label="排序"></el-table-column>
 				    <el-table-column align="center" prop="companyName" label="商户" min-width="120"></el-table-column>
@@ -50,7 +55,7 @@
 			</div>
 			<!-- 新增编辑 一级分类 -->
 			<div v-if="addParentFormVisible" class="app-container">
-				<el-form ref="addParentForm" :model="addParentForm" :rules="addParentFormRules" label-position="left" label-width="80px">
+				<el-form ref="addParentForm" :model="addParentForm" :rules="addParentFormRules" label-position="left" label-width="100px">
 					<el-row :gutter="20">
 						<el-col :span="6">
 							<el-form-item label="一级分类" prop="oneClassify">
@@ -76,6 +81,14 @@
 							</el-form-item>
 						</el-col>
 						<el-col :span="6">
+							<el-form-item label="服务首页展示" prop="isServiceShow">
+							  <el-radio-group v-model="addParentForm.isServiceShow">
+							    <el-radio :label="true">展示</el-radio>
+							    <el-radio :label="false">不展示</el-radio>
+							  </el-radio-group>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
 							<el-form-item label="排序" prop="sort">
 							  <el-input placeholder="请输入排序" v-model.number="addParentForm.sort" style="width: 250px;"></el-input>
 							</el-form-item>
@@ -202,6 +215,7 @@ export default {
         imgUrl: '',
         taxNumber: '',
         taxPercent: '',
+		isServiceShow: true,
         status: true,
         sort: 0,
       },
@@ -307,6 +321,7 @@ export default {
 						    imgUrl: res.data.imgUrl,
 						    taxNumber: res.data.taxNumber,
 						    taxPercent: res.data.taxPercent,
+							isServiceShow: res.data.isServiceShow,
 						    sort: res.data.sortNum
 						  }
 						})
@@ -335,6 +350,7 @@ export default {
             imgUrl: this.addParentForm.imgUrl,
             taxNumber: this.addParentForm.taxNumber,
             taxPercent: this.addParentForm.taxPercent,
+			isServiceShow: this.addParentForm.isServiceShow,
             status: this.addParentForm.status,
             sortNum: this.addParentForm.sort,
           }

+ 82 - 36
src/views/setting/departmentManage/index.vue

@@ -61,40 +61,56 @@
           </div>
         </div>
         <div v-if="~['add', 'edit'].indexOf(activeKey)">
-          <el-form ref="mainForm" :model="mainForm" :rules="mainFormRules" label-position="top" label-width="80px">
-            <el-form-item label="上级" prop="parentId">
-              <el-cascader style="width: 100%" :options="dataList2"
-                :props="{ checkStrictly: true, value: 'websitId', label: 'name' }" v-model="mainForm.parentId" filterable
-                clearable>
-              </el-cascader>
-            </el-form-item>
-            <el-form-item label="名称" prop="name">
-              <el-input placeholder="请输入网点名称" v-model="mainForm.name"></el-input>
-            </el-form-item>
-            <el-form-item label="联系人" prop="linkName">
-              <el-input placeholder="请输入联系人名称" v-model="mainForm.linkName"></el-input>
-            </el-form-item>
-            <el-form-item label="联系人电话" prop="websitPhone">
-              <el-input placeholder="请输入联系人电话" maxlength="11" type="number" v-model="mainForm.websitPhone"></el-input>
-            </el-form-item>
-            <el-form-item label="地址" prop="address">
-              <div style="display:flex;">
-                <el-input placeholder="请选择地址" style="margin-right: 20px;" v-model="mainForm.address"></el-input>
-                <geographicalPosi :formData="mainForm" @selectPosi="selectAddress"></geographicalPosi>
-              </div>
-            </el-form-item>
-            <el-form-item label="状态" prop="status">
-              <el-radio-group v-model="mainForm.status">
-                <el-radio :label="true">启用</el-radio>
-                <el-radio :label="false">禁用</el-radio>
-              </el-radio-group>
-            </el-form-item>
-            <el-form-item label="增值服务" prop="isIncre">
-              <el-radio-group v-model="mainForm.isIncre">
-                <el-radio :label="true">启用</el-radio>
-                <el-radio :label="false">禁用</el-radio>
-              </el-radio-group>
-            </el-form-item>
+          <el-form ref="mainForm" :model="mainForm" :rules="mainFormRules" label-width="100px">
+			<el-row :gutter="20" justify="start">
+				<el-col :span="6">
+					<el-form-item label="上级" prop="parentId">
+					  <el-cascader style="width: 100%" :options="dataList2"
+					    :props="{ checkStrictly: true, value: 'websitId', label: 'name' }" v-model="mainForm.parentId" filterable
+					    clearable>
+					  </el-cascader>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6">
+					<el-form-item label="名称" prop="name">
+					  <el-input placeholder="请输入网点名称" v-model="mainForm.name"></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6">
+					<el-form-item label="联系人" prop="linkName">
+					  <el-input placeholder="请输入联系人名称" v-model="mainForm.linkName"></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6">
+					<el-form-item label="联系人电话" prop="websitPhone">
+					  <el-input placeholder="请输入联系人电话" maxlength="11" type="number" v-model="mainForm.websitPhone"></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="12">
+					<el-form-item label="地址" prop="address">
+					  <div style="display:flex;">
+					    <el-input placeholder="请选择地址" style="margin-right: 20px;" v-model="mainForm.address"></el-input>
+					    <geographicalPosi :formData="mainForm" @selectPosi="selectAddress"></geographicalPosi>
+					  </div>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6">
+					<el-form-item label="状态" prop="status">
+					  <el-radio-group v-model="mainForm.status">
+					    <el-radio :label="true">启用</el-radio>
+					    <el-radio :label="false">禁用</el-radio>
+					  </el-radio-group>
+					</el-form-item>
+				</el-col>
+				<el-col :span="6">
+					<el-form-item label="增值服务" prop="isIncre">
+					  <el-radio-group v-model="mainForm.isIncre">
+					    <el-radio :label="true">启用</el-radio>
+					    <el-radio :label="false">禁用</el-radio>
+					  </el-radio-group>
+					</el-form-item>
+				</el-col>
+			</el-row>
             <!-- <el-form-item v-if="mainForm.type == 'B'" label="商品出入库" prop="joinCode">
               <el-radio-group v-model="mainForm.joinCode">
                 <el-radio :label="true">关联条码</el-radio>
@@ -102,7 +118,7 @@
               </el-radio-group>
             </el-form-item> -->
           </el-form>
-          <div slot="footer" class="dialog-footer">
+          <div class="footer">
             <el-button @click="data.removeTab()">取 消</el-button>
             <el-button type="primary" @click="submitMainForm(data.removeTab)">确 定</el-button>
           </div>
@@ -344,4 +360,34 @@ export default {
 }
 </script>
 
-<style scoped lang="scss"></style>
+<style scoped lang="scss">
+	.footer {
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		z-index: 1;
+		width: 100%;
+		background: #fff;
+		padding: 15px 40px;
+		box-sizing: border-box;
+		transition: all 0.28s;
+		text-align: right;
+		box-shadow: 0 2px 5px 0 rgb(0 0 0 / 50%), 0 2px 5px 0 rgb(0 0 0 / 10%);
+	
+		&.hideSidebar {
+			margin-left: 54px;
+			width: calc(100vw - 54px);
+		}
+	
+		&.openSidebar {
+			margin-left: 210px;
+			width: calc(100vw - 210px);
+		}
+	
+		.tips {
+			font-size: 12px;
+			color: red;
+			margin-top: 10px;
+		}
+	}
+</style>

+ 78 - 24
src/views/setting/organizationManagement/tenantDetails/index.vue

@@ -127,6 +127,14 @@
                 </el-radio-group>
               </el-form-item>
             </el-col>
+			<el-col :span="6">
+				<el-form-item label="商户属性" prop="companyType">
+					<el-radio-group v-model="step1Form.companyType">
+						<el-radio :label="1">销售</el-radio>
+						<el-radio :label="2">售后</el-radio>
+					</el-radio-group>
+				</el-form-item>
+			</el-col>
             <el-col :span="12">
               <el-form-item label="以旧换新抵扣方式" prop="yjhxDkFlag">
                 <el-radio-group v-model="step1Form.yjhxDkFlag">
@@ -135,6 +143,31 @@
                 </el-radio-group>
               </el-form-item>
             </el-col>
+						
+			<el-col :span="24">
+				<div style="margin-bottom: 20px">小程序底部菜单排序 <span style="color: #fb8c45;margin-left: 20px;"> 数字越小越靠前</span></div>
+				<el-table :data="step1Form.appModuleJson" style="width: 50%" element-loading-text="Loading" border fit highlight-current-row stripe>
+					<el-table-column prop="" align="center" label="类型">
+						<template slot-scope="scope">
+							{{typeFilter(scope.row.type)}}
+						</template>
+					</el-table-column>
+					<el-table-column prop="" align="center" label="名称">
+						<template slot-scope="scope">
+							<el-form-item :prop="'appModuleJson.' + scope.$index + '.name'" :rules="[{ required: true, message: `请输入名称`, trigger: 'blur' }]" label-width="0">
+								<el-input type="text" v-model="scope.row.name" placeholder="请输入"></el-input>
+							</el-form-item>
+						</template>
+					</el-table-column>
+					<el-table-column prop="" align="center" label="排序">
+						<template slot-scope="scope">
+							<el-form-item :prop="'appModuleJson.' + scope.$index + '.sort'" :rules="[{ required: true, message: `请输入排序`, trigger: 'blur' }]" label-width="0">
+								<el-input type="number" v-model="scope.row.sort" placeholder="请输入"></el-input>
+							</el-form-item>
+						</template>
+					</el-table-column>
+				</el-table>
+			</el-col>
           </el-row>
         </el-form>
       </el-card>
@@ -520,7 +553,9 @@ export default {
         moduleZl:'',
         moduleEs:'',
         storePay: '',
+		companyType: 2,
         yjhxDkFlag: '',
+		appModuleJson: []
       },
 
       passwordType1: 'password',
@@ -612,6 +647,17 @@ export default {
     userType() {
       return JSON.parse(localStorage.getItem('greemall_user')).type
     },
+		typeFilter(){
+				return function(type){
+					let obj = {
+						home: '首页',
+						order: '工单',
+						shop: '商城',
+						my: '我的'
+					}
+					return obj[type]
+				}
+		}
   },
   created() {
     const { id, type } = this.$route.query;
@@ -644,21 +690,23 @@ export default {
         this.step1Form.password = '************';
         this.step1Form.companyExpireTime = res.data.companyExpireTime
         this.step1Form.moduleMaterialPart = res.data.moduleMaterialPart
-				this.step1Form.billTitle = res.data.billTitle
+		this.step1Form.billTitle = res.data.billTitle
         this.step1Form.moduleYb = res.data.moduleYb
         this.step1Form.moduleWb = res.data.moduleWb
         this.step1Form.joinCode = res.data.joinCode
         this.step1Form.moduleZl = res.data.moduleZl
         this.step1Form.moduleEs = res.data.moduleEs
         this.step1Form.storePay = res.data.storePay
+		this.step1Form.companyType = res.data.companyType
         this.step1Form.yjhxDkFlag = res.data.yjhxDkFlag
+		this.step1Form.appModuleJson = JSON.parse(res.data.appModuleJson)
 
         this.img1_url = res.data.minLogo1;
         this.img2_url = res.data.minLogo2;
         this.img3_url = res.data.minLogo3;
         this.qrcode1_url = res.data.qrcode1;
         this.qrcode2_url = res.data.qrcode2;
-				this.qrcode3_url = res.data.payQrcode;
+		this.qrcode3_url = res.data.payQrcode;
 
         this.step3Form.enterpriseId = res.data.corpId;
         this.step3Form.listSecret = res.data.secret2;
@@ -788,28 +836,34 @@ export default {
     },
 
     submitStep1Form() {
-      this.formLoading = true;
-      let params = {
-        // adminUserId: this.id,
-        companyWechatId: this.companyWechatId,
-        moduleMaterialPart: this.step1Form.moduleMaterialPart,
-				billTitle: this.step1Form.billTitle,
-        moduleYb: this.step1Form.moduleYb,
-        moduleWb: this.step1Form.moduleWb,
-        joinCode: this.step1Form.joinCode,
-        moduleZl: this.step1Form.moduleZl,
-        moduleEs: this.step1Form.moduleEs,
-        storePay: this.step1Form.storePay,
-        yjhxDkFlag: this.step1Form.yjhxDkFlag,
-      }
-      editAccount(params).then(res => {
-        this.$successMsg('保存成功');
-        setTimeout(() => {
-          this.goBack();
-        }, 1500)
-      }).finally(res => {
-        this.formLoading = false;
-      })
+		this.$refs.step1Form.validate(valid => {
+		  if (valid) {
+			  this.formLoading = true;
+			  let params = {
+			    // adminUserId: this.id,
+			    companyWechatId: this.companyWechatId,
+			    moduleMaterialPart: this.step1Form.moduleMaterialPart,
+			  		billTitle: this.step1Form.billTitle,
+			    moduleYb: this.step1Form.moduleYb,
+			    moduleWb: this.step1Form.moduleWb,
+			    joinCode: this.step1Form.joinCode,
+			    moduleZl: this.step1Form.moduleZl,
+			    moduleEs: this.step1Form.moduleEs,
+			    storePay: this.step1Form.storePay,
+			  		companyType: this.step1Form.companyType,
+			    yjhxDkFlag: this.step1Form.yjhxDkFlag,
+			  				appModuleJson: JSON.stringify(this.step1Form.appModuleJson)
+			  }
+			  editAccount(params).then(res => {
+			    this.$successMsg('保存成功');
+			    setTimeout(() => {
+			      this.goBack();
+			    }, 1500)
+			  }).finally(res => {
+			    this.formLoading = false;
+			  })
+		  }
+		})
     },
 
     submitStep2Form() {

+ 25 - 2
src/views/userManagement/masterManagement/index.vue

@@ -36,7 +36,7 @@
       </div>
       <div v-if="~['examine', 'detail'].indexOf(activeKey)" style="box-sizing: border-box;padding: 16px;">
         <zj-form-container ref="formRef" :form-data="formData" :styleSwitch="false">
-          <zj-form-module :title="data.label" label-width="100px" :showPackUp="false" :form-data="formData"
+          <zj-form-module :title="data.label" label-width="110px" :showPackUp="false" :form-data="formData"
             :form-items="[...formItems,...imageList]">
           </zj-form-module>
         </zj-form-container>
@@ -84,6 +84,7 @@ export default {
 		mobile: '',
 		idCard: '',
 		bankAccount: '',
+		isEs: false,
         examineRemark: '',
         examineStatus: '',
 		idCardImg: []
@@ -204,7 +205,28 @@ export default {
           prop: 'bankAccount',
           rules: []
         }
-      }, {
+      },
+			// {
+			// 	md: 6,
+			// 	isShow: true,
+			// 	name: 'slot-component',
+			// 	attributes: {},
+			// 	formItemAttributes: {
+			// 		label: '二手商城发布',
+			// 		prop: 'isEs',
+			// 		rules: [...required]
+			// 	},
+			// 	render: (h, { props, onInput }) => {
+			// 		var { value } = props
+			// 		return (
+			// 			<el-radio-group v-model={this.formData.isEs}>
+			// 				<el-radio label={true}>是</el-radio>
+			// 				<el-radio label={false}>否</el-radio>
+			// 			</el-radio-group>
+			// 		)
+			// 	}
+			// }, 
+			{
         md: 24,
         isShow: true,
         name: 'el-input',
@@ -447,6 +469,7 @@ export default {
 				  userId: this.formData.userId,
 				  websitId: this.formData.websitId,
 				  bankAccount: this.formData.bankAccount,
+					isEs: this.formData.isEs,
 				  idCard: this.formData.idCard,
 				  idCardImg: this.formData.idCardImg[0].url,
 				  name: this.formData.nickName