| | |
| | | // export default environments['dev'] |
| | | |
| | | export default { |
| | | httpBaseUri: 'http://localhost:8084', |
| | | httpBaseUri: 'http://bio51-api.fixbug.fun', |
| | | // https://api.bio1751.com/swagger-ui.html |
| | | httpBaseUri: 'https://api.bio1751.com', |
| | | httpBaseUri: 'http://localhost:8084', |
| | | httpBaseUri: 'http://39.106.36.7:8081', |
| | | // httpBaseUri: 'https://bewy-api.fixbug.fun', |
| | | |
| | | |
| | | httpBaseUri: 'https://www.doggooo.com', |
| | | // httpBaseUri: 'http://localhost:8084', |
| | | httpBaseUri: 'http://106.14.123.210:8080/flower', |
| | | // http://106.14.123.210:8080/flower/swagger-ui.html#/ |
| | | // httpBaseUri: 'http://121.196.214.70', |
| | | // httpBaseUri: 'http://localhost:8084', |
| | | // httpBaseUri:'http://39.103.237.67:80', |
| | |
| | | } |
| | | return true |
| | | }, |
| | | async refreshList(){ |
| | | this.page.current = 1 |
| | | await this.getList() |
| | | }, |
| | | async getList() { |
| | | if (this.listApi) { |
| | | this.$message.showLoading() |
| | |
| | | <view> |
| | | <view class="form-item"> |
| | | <view class="label required">商品分类</view> |
| | | <view class="m-l-a m-r-0 flex " :class="[!dto.applicationType?'desc-gray':'']" @click="()=>{ |
| | | <view class="m-l-a m-r-0 flex " :class="[!dto.category?'desc-gray':'']" @click="()=>{ |
| | | if(!id){ |
| | | show_select_type=true |
| | | show_select_category=true |
| | | } |
| | | }"> |
| | | <view>{{dto.applicationTypeStr||dto.applicationType || '请选择'}}</view> |
| | | <view>{{dto.categoryStr||dto.category || '请选择'}}</view> |
| | | <u-icon class="m-l-a" name="arrow-right"></u-icon> |
| | | </view> |
| | | |
| | |
| | | </view> |
| | | |
| | | |
| | | |
| | | |
| | | <view class="button-green-1 m-t-20 button-fixed-bottom before-line" @click="submit"> |
| | | <view class="button-green-1 m-t-20 button-fixed-bottom before-line" @click="submit" v-if="!dto.id"> |
| | | 提交审核 |
| | | </view> |
| | | |
| | | <view class="button-green-1 m-t-20 button-fixed-bottom before-line" @click="submit" v-if="dto.id"> |
| | | 修改 |
| | | </view> |
| | | </view> |
| | | |
| | | |
| | | <u-picker @confirm="select_type" keyName="label" @cancel="show_select_type=false" :show="show_select_type" |
| | | <u-picker @confirm="select_category" keyName="label" @cancel="show_select_category=false" :show="show_select_category" |
| | | :columns="columns_types"></u-picker> |
| | | |
| | | <u-picker @confirm="select_user" keyName="label" @cancel="show_select_user=false" :show="show_select_user" |
| | |
| | | |
| | | <script> |
| | | import environments from '@/environments' |
| | | import xflSelect from '@/components/xfl-select/xfl-select.vue'; //导入 |
| | | |
| | | import { |
| | | mapState |
| | |
| | | data() { |
| | | return { |
| | | id: '', |
| | | orderId: '', |
| | | show_addlog: false, |
| | | log_remarks: '', |
| | | refresh: false, |
| | | api: '', |
| | | dto: { |
| | | id: '', |
| | | applicationType: '', |
| | | name: '', |
| | | category: '', |
| | | unit: '', |
| | | color: '', |
| | | cover: '', |
| | | bannerList: [], //str[] |
| | | video: '', |
| | | level: '', //FLOWER_LEVEL |
| | | price: 0.00, |
| | | stock: 0, |
| | | params: [], //id,value |
| | | }, |
| | | show_select_type: false, |
| | | show_select_category: false, |
| | | show_select_user: false, |
| | | columns_types: [], |
| | | audit_remarks: '', |
| | | audit_result: false, |
| | | show_audit: false, |
| | | |
| | | |
| | | //审核方式 |
| | | shTypeList: [{ |
| | | name: '身份证', |
| | | disabled: false |
| | | }, |
| | | { |
| | | name: '营业执照', |
| | | disabled: false |
| | | } |
| | | ], |
| | | radiovalue1: '身份证', |
| | | columns_categorys: [], |
| | | columns_levels:[], |
| | | |
| | | } |
| | | }, |
| | | onLoad(options) { |
| | | async onLoad(options) { |
| | | if (options.id) { |
| | | this.id = options.id |
| | | this.getDetail() |
| | | } else { |
| | | // this.$http.request('get', '/api/personnel/employee/list', { |
| | | // params: { |
| | | // size: 4000, |
| | | // current: 1 |
| | | // } |
| | | // }).then(res => { |
| | | // this.userListAll = (res.data && res.data.records || []).map(item => { |
| | | // item.label = item.label || item.name || item.nickName || item.loginName || '-' |
| | | // return item |
| | | // }) |
| | | // var index = 0 |
| | | // this.userList = this.userListAll.map(item => { |
| | | // index += 1 |
| | | // return `${index}.` + item.label + (item.tel ? `(${item.tel})` : '') |
| | | // }) |
| | | // var arr = this.userListAll.map(item => { |
| | | // return { |
| | | // label: item.label + (item.tel ? `(${item.tel})` : ''), |
| | | // value: item.id |
| | | // } |
| | | // }) |
| | | // this.userListCols = [arr] |
| | | |
| | | // }) |
| | | |
| | | |
| | | this.$http.request('get', '/api/dict/value', { |
| | | if (options.copyId) { |
| | | this.id = options.copyId |
| | | await this.getDetail() |
| | | this.id = '' |
| | | delete this.dto.id |
| | | } |
| | | |
| | | //tree |
| | | this.$http.request('get', '/api/flower/category/tree', { |
| | | params: { |
| | | typeCode: 'APPLICATION_TYPE' |
| | | typeCode: 'FLOWER_LEVEL' |
| | | } |
| | | }).then(res => { |
| | | var data = res.data |
| | | this.columns_types = [data || []] |
| | | this.columns_types[0].unshift({ |
| | | this.columns_categorys = [data || []] |
| | | this.columns_categorys[0].unshift({ |
| | | label: '全部', |
| | | value: '', |
| | | children:[] |
| | | }) |
| | | |
| | | }) |
| | | |
| | | this.$http.request('get', '/api/dict/value', { |
| | | params: { |
| | | typeCode: 'FLOWER_LEVEL' |
| | | } |
| | | }).then(res => { |
| | | var data = res.data |
| | | this.columns_levels = [data || []] |
| | | this.columns_levels[0].unshift({ |
| | | label: '全部', |
| | | value: '' |
| | | }) |
| | |
| | | methods: { |
| | | |
| | | |
| | | select_type(e) { |
| | | this.show_select_type = false |
| | | this.dto.applicationTypeStr = e.value[0].label |
| | | this.dto.applicationType = e.value[0].value |
| | | select_category(e) { |
| | | this.show_select_category = false |
| | | this.dto.categoryStr = e.value[0].label |
| | | this.dto.category = e.value[0].value |
| | | }, |
| | | select_user(e) { |
| | | this.show_select_user = false |
| | |
| | | const { |
| | | code, |
| | | data |
| | | } = await this.$http.request('get', "/api/app/application/get/" + this.id, {}) |
| | | } = await this.$http.request('get', "/api/supplier/flower/list/view?id=" + this.id, {}) |
| | | if (code == 0) { |
| | | this.dto = { |
| | | ...data, |
| | | |
| | | } |
| | | if (this.dto.applicationDate) { |
| | | this.dto.applicationDate = this.$util.toDate(new Date(this.dto.applicationDate)) |
| | | } |
| | | // console.log('this.dto', this.dto) |
| | | // if (this.dto.applicationDate) { |
| | | // this.dto.applicationDate = this.$util.toDate(new Date(this.dto.applicationDate)) |
| | | // } |
| | | // // console.log('this.dto', this.dto) |
| | | |
| | | } |
| | | |
| | |
| | | |
| | | }, |
| | | async submit() { |
| | | if (!this.dto.applicationType) { |
| | | this.$message.showToast('未选择类型') |
| | | return |
| | | } |
| | | if (!this.dto.applicationTitle) { |
| | | this.$message.showToast('未填写申请主题') |
| | | return |
| | | } |
| | | if (!this.dto.auditPersonId) { |
| | | this.$message.showToast('未选择审批人') |
| | | return |
| | | } |
| | | await this.$message.confirm(`是否确定提交申请${this.auditPersonName?(",审批人为:"+this.auditPersonName):""}`) |
| | | // if (!this.dto.applicationType) { |
| | | // this.$message.showToast('未选择类型') |
| | | // return |
| | | // } |
| | | // if (!this.dto.applicationTitle) { |
| | | // this.$message.showToast('未填写申请主题') |
| | | // return |
| | | // } |
| | | // if (!this.dto.auditPersonId) { |
| | | // this.$message.showToast('未选择审批人') |
| | | // return |
| | | // } |
| | | // await this.$message.confirm(`是否确定提交申请${this.auditPersonName?(",审批人为:"+this.auditPersonName):""}`) |
| | | |
| | | // this.$message.showToast('1') |
| | | // return |
| | | var dto = { |
| | | ...this.dto, |
| | | applicationDate: this.$util.toDate(new Date()), |
| | | applicantId: this.currentInfo.id |
| | | // applicationDate: this.$util.toDate(new Date()), |
| | | // applicantId: this.currentInfo.id |
| | | } |
| | | this.$message.showLoading() |
| | | const re = await this.$http.request('post', '/api/app/application/create', { |
| | | const re = await this.$http.request('post', `/api/supplier/flower/list/${this.id?'edit':'new'}`, { |
| | | data: dto |
| | | }) |
| | | this.$message.hideLoading() |
| | | if (re.code == 2000 || re.code == 0) { |
| | | this.$message.showToast('操作成功') |
| | | //需要标记加一下 |
| | | this.$store.dispatch('sign_add', 'application'); |
| | | // this.$store.dispatch('sign_add', 'application'); |
| | | |
| | | this.backpage() |
| | | } |
| | | }, |
| | | async submitAudit() { |
| | | var url = '' |
| | | if (this.audit_result) { |
| | | url = '/api/app/application/audit/pass' |
| | | } else { |
| | | url = '/api/app/application/audit/reject' |
| | | } |
| | | var dto = { |
| | | id: this.id, |
| | | auditRemarks: this.audit_remarks |
| | | } |
| | | this.show_audit = false |
| | | this.$message.showLoading() |
| | | const re = await this.$http.request('post', url, { |
| | | data: dto |
| | | }) |
| | | this.$message.hideLoading() |
| | | if (re.code == 2000 || re.code == 0) { |
| | | this.$message.showToast('操作成功') |
| | | this.$store.dispatch('sign_add', 'application'); |
| | | |
| | | this.getDetail() |
| | | } |
| | | }, |
| | | uploadIcon(key) { |
| | | const that = this |
| | | uni.chooseImage({ |
| | |
| | | ...mapState(['currentInfo']) |
| | | }, |
| | | components: { |
| | | xflSelect |
| | | |
| | | } |
| | | } |
| | | </script> |
| | |
| | | <view class="flow-manage"> |
| | | <view class="top-buttons" v-if="type==='all'"> |
| | | <view @click.stop="clickButton('add')" class="button button-add"></view> |
| | | <view class="button button-search-in"></view> |
| | | <view class="button button-search-unpass"></view> |
| | | <view class="button button-search-inpass"></view> |
| | | <view class="button button-search-delete"></view> |
| | | <view @click.stop="clickButton('in')" class="button button-search-in"></view> |
| | | <view @click.stop="clickButton('unpass')" class="button button-search-unpass"></view> |
| | | <view @click.stop="clickButton('inpass')" class="button button-search-inpass"></view> |
| | | <view @click.stop="clickButton('delete')" class="button button-search-delete"></view> |
| | | |
| | | </view> |
| | | |
| | |
| | | |
| | | </view> |
| | | <view class="buttons"> |
| | | <view class="button">复制</view> |
| | | <view class="button">删除</view> |
| | | <view class="button">下架</view> |
| | | <view class="button" @click.stop="toDetailAdd(item)">复制</view> |
| | | <view class="button" @click.stop="buttonDelete(item)">删除</view> |
| | | <view class="button" @click.stop="buttonStatus(item,'off')" v-if="item.status=='UP'">下架</view> |
| | | <view class="button" @click.stop="buttonStatus(item,'up')" v-if="item.status=='OFF'">上架</view> |
| | | <view class="button" @click.stop="toDetail(item)">编辑</view> |
| | | <view class="button">价格</view> |
| | | <view class="button">库存</view> |
| | | <view class="button" @click.stop="changeValue(item,'price')">价格</view> |
| | | <view class="button" @click.stop="changeValue(item,'stock')">库存</view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | |
| | | onLoad(options) { |
| | | this.type = options.type || 'all' |
| | | //todo 根据type切换查询条件 |
| | | this.listApi = '/api/ua/announcement/list' |
| | | if (this.type === 'delete') { |
| | | this.listApi = '/api/supplier/flower/list/rc' |
| | | |
| | | } else { |
| | | this.listApi = '/api/supplier/flower/list' |
| | | this.query.status = '' |
| | | if (this.type === 'inpass') { |
| | | this.query.status = 'PENDING' |
| | | } |
| | | if (this.type === 'in') { |
| | | this.query.status = 'UP' |
| | | } |
| | | if (this.type === 'unpass') { |
| | | this.query.status = 'REJECT' |
| | | } |
| | | } |
| | | this.getList() |
| | | }, |
| | | onReachBottom() { |
| | |
| | | uni.stopPullDownRefresh() |
| | | }, |
| | | methods: { |
| | | async changeValue(item, key) { |
| | | const res = await this.$message.confirm(`确定修改此商品的${key==='price'&&'价格'|| key==='stock'&&'库存'}吗`, { |
| | | editable: true |
| | | }) |
| | | if(!res.content){ |
| | | this.$message.showToast('输入不能为空') |
| | | return |
| | | } |
| | | var value = '' |
| | | if(key=='price'){ |
| | | value = parseFloat(res.content).toFixed(2) |
| | | }else{ |
| | | value = parseInt(res.content) |
| | | } |
| | | if(isNaN(value)){ |
| | | this.$message.showToast('输入格式不正确') |
| | | return |
| | | } |
| | | var dto = { |
| | | id: item.id, |
| | | } |
| | | dto[key] = value |
| | | |
| | | |
| | | this.$message.showLoading() |
| | | this.$http.request('post', '/api/supplier/flower/list/' + key, { |
| | | data: dto |
| | | }).then(res => { |
| | | if (res.code == 0) { |
| | | this.$message.showToast('操作成功') |
| | | item[key] = value |
| | | } |
| | | }).finally(() => { |
| | | this.$message.hideLoading() |
| | | }) |
| | | }, |
| | | async buttonStatus(item, status) { |
| | | await this.$message.confirm(`确定${status==='off'?'下降':'上架'}此商品吗`) |
| | | this.$message.showLoading() |
| | | this.$http.request('get', '/api/supplier/flower/list/' + status, { |
| | | params: { |
| | | id: item.id |
| | | } |
| | | }).then(res => { |
| | | if (res.code == 0) { |
| | | this.$message.showToast('操作成功') |
| | | item.status = status |
| | | item.statusStr = (status == 'off' ? '下架' : '上架') |
| | | } |
| | | }).finally(() => { |
| | | this.$message.hideLoading() |
| | | }) |
| | | }, |
| | | async buttonDelete(item) { |
| | | await this.$message.confirm('确定删除此商品吗') |
| | | this.$message.showLoading() |
| | | this.$http.request('get', '/api/supplier/flower/list/delete', { |
| | | params: { |
| | | id: item.id |
| | | } |
| | | }).then(res => { |
| | | if (res.code == 0) { |
| | | this.$message.showToast('删除成功') |
| | | this.refreshList() |
| | | } |
| | | }).finally(() => { |
| | | this.$message.hideLoading() |
| | | }) |
| | | }, |
| | | toDetail(item) { |
| | | uni.navigateTo({ |
| | | url: '/pages/farmer/flower-manage/flower-add?id=' + item.id |
| | | }) |
| | | }, |
| | | toDetailAdd(item) { |
| | | uni.navigateTo({ |
| | | url: '/pages/farmer/flower-manage/flower-add?copyId=' + item.id |
| | | }) |
| | | }, |
| | | clickButton(type) { |
| | | if (type == 'add') { |
| | | //添加页面 |
| | |
| | | |
| | | |
| | | <view class="t-a input" v-if="loginType=='code'"> |
| | | <input type="text" :password="true" name="password" placeholder="请输入密码" v-model="password" /> |
| | | <input type="text" name="userName" placeholder="请输入手机验证码" v-model="smsCode" /> |
| | | </view> |
| | | |
| | | <button @tap="login()" class="bottom-button">登 录</button> |
| | | |
| | | <view class="flex"> |
| | | <view class="topic-font" @click="loginType='code'">手机验证码登录</view> |
| | | <view class="topic-font" @click="loginType='pwd'">账号密码登录</view> |
| | | |
| | | <view class="topic-font m-l-a m-r-0" @click="toReg">前往注册</view> |
| | | </view> |
| | | </form> |
| | |
| | | // password: '12345678', |
| | | userName: '', |
| | | phoneNumber: '', |
| | | smsCode:'', |
| | | password: '', |
| | | checked: false, |
| | | loginType: 'pwd', //pwd和code,密码和验证码登录 |
| | |
| | | } |
| | | return resp |
| | | }, |
| | | loginShop: async function({ |
| | | loginSupplier: async function({ |
| | | commit, |
| | | dispatch, |
| | | state |
| | | }, data) { |
| | | { |
| | | const resp = await http.request('post', '/api/login/employee', { |
| | | const resp = await http.request('post', '/api/login/supplier'+(data.phoneNumber?'/phone':''), { |
| | | data: { |
| | | username: data.username, |
| | | password: data.password |
| | | password: data.password, |
| | | tel:data.phoneNumber, |
| | | smsCode:data.smsCode || '' |
| | | }, |
| | | params: { |
| | | clientType: data.clientType || 'app' |